2013-04-08 3 views
0

Если я сохраню свой код ..Backbone.js не посылает определенные атрибуты сервера в paramRoot

attrs = 
    attr1: 1 
    attr2: 2 
    attr3: 3 

@question.save(attrs) 

У меня есть это в моих магистральных моделях:

url: '/questions' 
paramRoot: 'question' 

Это Отправит server эти параметры:

{question: {attr1: 1, attr2: 2} } # Note how it skips attr3 

Я очень конкретно пытаюсь обновить атрибуты, которые оба не существуют в моей оригинальной модели, но могут быть сохранен как таковой, а равно не сохраняет другие атрибуты, которые уже были созданы с помощью объекта.

+0

пожалуйста, напишите больше кода! –

+0

Я не уверен, что я должен опубликовать. Это очень просто. Я пытаюсь сохранить определенный атрибут, и он сохраняет только два атрибута, а не те, которые я передаю в аргументе. Любые рекомендации о том, что еще нужно публиковать? – Trip

+0

- ваша модель 'attrs'? –

ответ

0

В JavaScript, вы могли бы сделать что-то вроде:

var QuestionModel = Backbone.Model.extend({ 
    urlRoot = "/questions" 
}); 

question = new QuestionModel(); 
question.set('attr1', 1); 
question.set('attr2', 2); 
question.set('attr3', 3); 

question.save(); 

Или вы можете сохранить и добавить атрибуты сразу:

question.save({ 
    attr1: 1, 
    attr2: 2, 
    attr3: 3 
}); 
+0

Он не сохраняет эти атрибуты. Это только спасает две из трех. И, сохраняя, его отправка только двух из атрибутов в моем 'paramRoot: 'question'', а остальные возвращаются за пределы этого paramRoot. – Trip

+0

@Trip. Я не уверен в' url' vs 'urlRoot', но в этом случае я думаю вам нужен urlRoot, поскольку он находится вне коллекции. Кроме того, что такое paramRoot? –

Смежные вопросы