Backbone.js: Что такое атрибут paramRoot: в backbone.model?

Я использую rails-backbone gem и сгенерировал модель Backbone. Модель включает в себя paramRoot: приписывать. Я предполагаю, что это как-то говорит Backbone, как подключиться к соответствующей модели Rails, но я не могу найти никакой документации по этому поводу.

Что значит paramRoot на самом деле делать?

1 ответ

Решение

Магистральные рельсы не документируются paramRoot, Я полагаю, вы должны использовать генераторы для создания ваших моделей:

class <%= model_namespace %> extends Backbone.Model
  paramRoot: '<%= singular_table_name %>'
  #...

и слепо делай, как тебе говорят.

Если вы хотите знать, что он делает, вы должны прочитать источник (как обычно). Единственное, что в Backbone-рельсах использует paramRoot это их замена для стандарта Backbone.sync; их замена содержит это:

if(model.paramRoot) {
  data[model.paramRoot] = model.toJSON();
} else {
  data = model.toJSON();
}

Все, что нужно, это изменить сериализованные атрибуты модели по сравнению со стандартными. {attr1: v1, attr2: v2, ...} Магистральная форма к { model_name: { attr1: v1, ... } } форма, которую хочет Rails; тогда вы можете посмотреть на params[:model_name] в ваших контроллерах Rails, а не просто смотреть params,

Другие вопросы по тегам