我有三个Ember.js模型:用户,频道和曲目。用户可以有许多频道和轨道属于某个频道。它们看起来像这样:
// models/user.js
export default DS.Model.extend({
channels: DS.hasMany('channel')
});
// models/channel.js
export default DS.Model.extend({
user: DS.belongsTo('user')
});
// models/track.js
export default DS.Model.extend({
channel: DS.belongsTo('channel')
});
现在,要创建频道,您应该进行身份验证。编辑/删除我检查特定频道是否在经过身份验证的用户的“频道”属性中。像这样:
".write": "(!data.exists() && auth !== null) || (root.child('users/' + auth.uid + '/channels').child($channelID).exists())"
这是对的吗?似乎工作。
要编写曲目,您应该进行身份验证,并且channel
列表中应包含曲目user/$userid/channels
。
".write": "root.child('users/' + auth.uid + '/channels').child( <<value of the channel property on the track>> ).exists()"
我该怎么做?