我正在建立一个有用户的网站。 用户可以搜索歌曲,(如果是签名的话)可以将其保存到演唱者或其歌曲图书馆。
我想让主人喜欢,因为歌舞厅上的所有歌曲都是图书馆的一部分,这样,当使用者选择观看他们的歌曲图书馆时,表演者的歌曲以及刚刚添加到图书馆的歌曲就能够展示。 我喜欢一首歌,能够储存在多个游乐场。
现在,我正在使用Mongodb, 做这样的事情:
var UserSchema = new Schema();
var Library = new Schema({
songs: [SongsSchema],
user: Schema.ObjectId
});
var Playlist = new Schema({
title: String,
description: String,
user: Schema.ObjectId
});
var SongsSchema = new Schema({
position: Number,
name: String,
artist: String,
artistGid: String,
album: String,
albumGid: String
time: Number,
url: String,
gid: String,
location: String (either youtube, vimeo, soundcloud for now),
playlist: [Schema.ObjectId] (array of object ids that point to playlists?)
});
这似乎最好吗? 我与大家的关系一样,似乎有很多重复之处,但我很难以能够奏效的方式使这一局面正常化。