我有我的應用3種不同的模式:定義3種模式MongoDB中具有不同的關係(很多到多,一到多...)
userSchema, questionSchema, listingSchema
三者之間的關係是如下:
每個列表有很多與它相關的問題(每個列表相同的問題)。
每個用戶可以回答在幾個列表中的許多問題。
每個問題許多用戶在許多列表中回答。
我試圖環繞確定這些模式之間的正確關係(主要是因爲像「與_id = 100
用戶的列表回答的問題與_id = 5
與_id = 3
,我該如何更新所有這些最有效的問題,我的頭路)
到目前爲止,我已經定義爲:?
questionSchema:
var questionSchema = new Schema({
description: String
});
userSchema:
var userSchema = new Schema({
local : {
email : String,
password : String,
name : String
},
ApartmentsAndQuestions: [{
apartmentID: String,
questionID: [String] /* one apartment -> multiple questions */
}]
});
而且listingSchema:
var listingSchema = new Schema({
street : String,
buildingNumber : Number,
apartmentNumber : Number,
type : String,
floor : Number,
outOfFloors : Number,
numberOfRooms : Number,
size : Number,
renovated : Boolean,
elevator : Boolean,
airConditioning : Boolean,
balcony : Boolean,
price : Number,
description : String,
flagCount : Number,
pictures : [imageSchema]
owner : [userSchema]
UsersAndQuestions: [{
userID: String,
questionID: [String] /* one user -> multiple questions asked possible */
}]
});
問題:我如何把它做好,我的NoSQL數據庫?我的定義是否有意義?有沒有更好的方式來描述這些模式之間的關係?
任何幫助將大大讚賞!
你要問一個具體問題的一個問題。 「這是否有意義」不是一個真正的問題,而是要求驗證。 –
我認爲這是一個有效的問題,要問我的設計是否有意義,或者如果有更好的東西,我不知道或沒有正確實施 – Idos
你至少試過,如果它的工作?如果它在工作並且完成了你設計它所要做的事情 - 它會讓人感覺到。如果它不起作用,那麼爲什麼 - 是否有任何錯誤或者您有什麼問題?那些問題是什麼?我沒有看到任何這些信息。在提出問題之前請付出一些努力。 –