2013-04-04 3 views
3

я определил следующую модель:Повторное использование модели для различных объектов

App.Node = DS.Model.extend({ 
    type: DS.attr('string'), 
    name: DS.attr('string') 
}); 

Данные для этой модели могут быть получены через REST в api/nodes.

Теперь у меня есть подобные данные, которые могут быть найдены в api/phonenumbers. Структура данных одна и та же, поэтому я хотел повторно использовать модель. Я определил:

App.Phonenumber = App.Node; 

Но это не работает. Запрос по-прежнему отправляется на api/nodes для этой модели. Зачем? Как я могу повторно использовать модели?

ответ

4

Я думаю, App.Phonenumber = App.Node.extend({}); может сделать трюк.

2

Можете ли вы спросить: «Является ли Phonenumber узлом?» В вашем контексте?

Если да, то расширение является вашим решением.

Если нет, то вы, вероятно, можете спросить: «Имеет ли Phonenumber сходство с узлом?».

В этом случае, я хотел бы сделать следующее:

var genericNameConfig = { 
    type : DS.attr('string'), 
    name : DS.attr('string') 
}; 

App.Node  = DS.Model.extend(genericNameConfig); 
App.Phonenumber = DS.Model.extend(genericNameConfig); 
Смежные вопросы