ユーザーのデータベースを使ってサイトを構築しています。私はarbor.jsを使用して、各ユーザーのグラフを作成しています。グラフは、エッジとノードが次のようになっているツリーのような構造です(画像の準備はできていますが、まだ十分な評判がないようです)。
vehicle
/ \
/ \
car truck
/
/
sedan
次のJSONで表されます。
{
"nodes":{
"vehicle":{
"color":"black",
"label":"vehicle"
},
"car":{
"color":"orange",
"label":"car"
},
"truck":{
"color":"red",
"label":"truck"
},
"sedan":{
"color":"red",
"label":"sedan"
}
},
"edges":{
"vehicle":{
"car":{
"weight":5,
"directed":true,
"color":"orange"
},
"truck":{
"weight":5,
"directed":true,
"color":"red"
}
},
"car":{
"sedan":{
"weight":2,
"directed":true,
"color":"orange"
}
}
}
}
各グラフには、常に動的ノードとエッジを持つオブジェクトがありますnodes
。edges
それぞれの属性(、、color
などlabel
)weight
は修正されます。
私は、ユーザーごとにこのデータをモデル化するための最良の方法を見つけようとしています。私は、MongoDBがオブジェクトをドキュメントとしてデータベースに保存できることを理解しているため、RailsをMongoDB(Mongoid)で使用しています。各ユーザーが定義できるグラフモデルを持っていると確信していますが、それを超えると、ノードとエッジを処理する方法がわかりません。
解決策には、、、またはおそらくが含まれるhas_many
と思いますが、固定データと動的データを組み合わせてこれらを使用する方法がわかりません。embeds_many
serialize
また、ディスクからデータをロードするときにグラフを簡単に作成できるように、上記のように正確にデータを取得すると便利です。
どんな助けでもいただければ幸いです!