和芝加哥老板一起玩, 我有这样的模型:
-module(person, [Id, Name]).
-compile(export_all).
让我们说我想添加朋友和敌人。我想出了这个。
-module(person, [Id, Name]).
-compile(export_all).
-has({dependency, many, [{foreign_key, "person1_id"}]}).
-has({dependency, many, [{foreign_key, "person2_id"}]}).
-module(friend, [Id, Person1, Person2]).
-compile(export_all).
-belongs_to_person(person1).
-belongs_to_person(person2).
-module(friend, [Id, Person1, Person2]).
-compile(export_all).
-belongs_to_person(person1).
-belongs_to_person(person2).
这似乎做了我想要的,即使键名可能需要更改为更直观的东西。
但是,我刚刚开始学习Erlang,并想知道这是否是最好的方法。我使用mnesia作为BossDB的后端,我得到的印象是mnesia能以更好的方式处理这个问题。如果没有CB模型并使用控制器中的mnesia(或dets),我会更好吗?