Мы использовали Backbone Relational для моделирования наших отношений ORM во внешнем интерфейсе, например:
{
id: 2
username: "bob"
comments: [
{
id:5,
comment: "hi",
user: {
username: 'Bob'
}
}
]
}
Это отлично работает с такими моделями, как эта, во внешнем интерфейсе:
class User extends App.RelationalModel
relations: [{
type: Backbone.HasMany,
key: 'comments',
relatedModel: 'Comment',
collectionType: 'CommentCollection'
}]
Однако теперь наш API изменился и больше соответствует спецификации JSON-API, поэтому данные из серверной части инкапсулируются внутри «данных».
{
data: {
id: 2
username: "bob"
data: {
comments: [
{
id:5,
comment: "hi",
user: {
username: 'Bob'
}
}
]
},
meta: {
}
}
}
Как мы можем дать указание магистральной реляционной структуре получать данные для отношения «комментарии» из .data вместо прямого сопоставления структуры json?
Для «пользователя класса» мы можем реализовать метод синтаксического анализа следующим образом.
class User
parse: (response) ->
response.data
Но как нам это сделать для отношения комментариев??