рдирдорд╕реНрддреЗ,
рдореБрдЭреЗ рдХреБрдЫ рд╕рдордЭрдиреЗ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рд╣реИ рдпрд╛ рдпрд╣ рдЧрдбрд╝рдмрдбрд╝ рд╣реИред
рдЪрд▓реЛ рд╢реБрд░реВ рдХрд░реЛред рдпрд╣рд╛рдБ DBRefs рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреНрд░рд▓реЗрдЦрди рд╣реИ:
http://docs.mongodb.org/manual/reference/database-references/#dbrefs
рд╡реЗ рд▓рд┐рдЦрддреЗ рд╣реИрдВ рдХрд┐ рд╕рдВрджрд░реНрдн рдХреЗ рд╕рд╛рде рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЗ рд▓рд┐рдП рд╕рдВрд░рдЪрдирд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП:
{
"_id" : ObjectId("5126bbf64aed4daf9e2ab771"),
// .. application fields
"creator" : {
"$ref" : "creators",
"$id" : ObjectId("5126bc054aed4daf9e2ab772"),
"$db" : "users"
}
}
рдЖрдЗрдП рдЕрдм рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓рддреЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг 1):
https://gist.github.com/hastebrot/1170907
рдЬрдм рдореИрдВ рдЗрд╕ рдХреЛрдб рдХреЛ рдЪрд▓рд╛рддрд╛ рд╣реВрдВ рддреЛ рдореЗрд░реЗ рдкрд╛рд╕ рдРрд╕рд╛ рдХреБрдЫ рд╣реЛрддрд╛ рд╣реИ:
рдХрд╣рд╛рдиреА:
"title": "A man who cooked Nintendo",
"_creator": {
"$oid": "52e7dcea3d9cd59c13702e3d"
},
"_id": {
"$oid": "52e7dceb3d9cd59c13702e3e"
},
"fans": [],
"__v": 0
рд▓реЛрдЧ:
"name": "Aaron",
"age": 100,
"_id": {
"$oid": "52e7dcea3d9cd59c13702e3d"
},
"stories": [],
"__v": 0
рд╣рдорд╛рд░реА рдЯреАрдо рдореЗрдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЬрд╛рд╡рд╛ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдЫреЛрдЯрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╣реИ рдЬреЛ рдореЛрдВрдЧреЛрдбреАрдмреА рдХреЗ рд▓рд┐рдП рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЛрдВрдЧреЛрдбреАрдмреА рджрд╕реНрддрд╛рд╡реЗрдЬ рдореЗрдВ рдбреЗрдЯрд╛ рд╕рд╣реЗрдЬрддреА рд╣реИ:
....//other fields
"user": {
"$ref": "users",
"$id": {
"$oid": "52c6c497c08e6fcf37000001"
}
}
рдФрд░ рдореИрдВ рдбреЗрдЯрд╛ рдХреЛ рдкреЙрдкреНрдпреБрд▓реЗрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдХреНрдпреЛрдВрдХрд┐ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреЗрд╡рд▓ рдиреЗрд╡рд▓рд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдЕрдЧрд░ рдореИрдВ рдЧрд▓рдд рд╣реВрдВ рддреЛ рдореБрдЭреЗ рд╕реБрдзрд╛рд░реЗрдВ рд▓реЗрдХрд┐рди рдореЗрд░реЗ рд▓рд┐рдП рдпрд╣ рдРрд╕рд╛ рд╣реИ рдЬреИрд╕реЗ рдЖрдк рдбреАрдмреАрдЖрд░рдПрдл рдХреЛ рд╕рд╣реЗрдЬрддреЗ рдирд╣реАрдВ рд╣реИрдВ рдЬреИрд╕рд╛ рдХрд┐ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╣реИред
+1
рд╕рд┐рджреНрдзрд╛рдВрдд рдореЛрдВрдЧреЛрдбрдм рдУрдбреАрдПрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рдПрдХ PHP рдЖрд╡реЗрджрди рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝ рд░рд╣рд╛ рд╣реИред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдореИрдВ рдЕрдкрдиреЗ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рдбреАрдмреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдиреЗрд╡рд▓рд╛ рдХреЗ рд╕рд╛рде рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдХреНрдпреЛрдВрдХрд┐ рдореЛрдВрдЧреЛрдбрдм рдбреАрдмреАрдЖрд░рдПрдл рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рдВрджрд░реНрднреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╢рд╛рдпрдж рдПрдХ рдФрд░ рд╕реНрдХреАрдорд╛ рдкреНрд░рдХрд╛рд░ (Schema.DBRef?) рдЬреЛрдбрд╝рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП?
рд╡рд╣ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рджрд┐рдП рдЧрдП infos рдХреЗ рд╕рд╛рде рд▓реЛрдб рдХрд░реЗрдЧрд╛ред
рдЕрднреА рднреА рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдХрд┐рд╕реА рдиреЗрд╡рд▓рд╛ рджреЗрд╡ рд╕реЗ рдХреЛрдИ рдЗрдирдкреБрдЯ рдирд╣реАрдВ? рдпрд╣ рдПрдХ рдЖрд╡рд░реНрддреА рд╕рдорд╕реНрдпрд╛ рд╣реИ рдЬреЛ рддрдм рдЖрддреА рд░рд╣рддреА рд╣реИ рдЬрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдбреНрд░рд╛рдЗрд╡рд░ рдПрдХ рд╣реА рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рд▓рд┐рдЦрдиреЗ рдФрд░ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЛрддреЗ рд╣реИрдВред
рдиреЛрдб рдбреНрд░рд╛рдЗрд╡рд░ DBRefs рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдпрд╣ рдЕрдЬреАрдм рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ Mongoose рдХреЗ рдкрд╛рд╕ рдЕрднреА рднреА рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рдорд░реНрдерди рдирд╣реАрдВ рд╣реИред
рдкреЙрдкреНрдпреБрд▓реЗрдЯ рдХреЗ рд▓рд┐рдП DBRefs рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдЙрдЪреНрдЪ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ MongoDB рдбреЙрдХреНрд╕ dbref рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддреЗ рд╣реИрдВ ред рдЖрдк рд╣рдореЗрд╢рд╛ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рд╕реНрд╡рдпрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдЕрднреА рднреА рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдХрд┐рд╕реА рдиреЗрд╡рд▓рд╛ рджреЗрд╡ рд╕реЗ рдХреЛрдИ рдЗрдирдкреБрдЯ рдирд╣реАрдВ? рдпрд╣ рдПрдХ рдЖрд╡рд░реНрддреА рд╕рдорд╕реНрдпрд╛ рд╣реИ рдЬреЛ рддрдм рдЖрддреА рд░рд╣рддреА рд╣реИ рдЬрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдбреНрд░рд╛рдЗрд╡рд░ рдПрдХ рд╣реА рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рд▓рд┐рдЦрдиреЗ рдФрд░ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЛрддреЗ рд╣реИрдВред
рдиреЛрдб рдбреНрд░рд╛рдЗрд╡рд░ DBRefs рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдпрд╣ рдЕрдЬреАрдм рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ Mongoose рдХреЗ рдкрд╛рд╕ рдЕрднреА рднреА рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рдорд░реНрдерди рдирд╣реАрдВ рд╣реИред