2011-12-14 2 views
0

私は、ユーザーが独自のカスタムフィールドを作成できるプロジェクトに着手しようとしています。私の質問 - このようなものに最適なアプローチは何ですか?ユーザーが独自のフィールドを作成できるようにするための最善のアプローチ

使用例:first_name、last_nameなどの属性を持つ医療記録がありますが、ユーザーが自分のアカウントにログインしてカスタムフィールドを作成できるようにしたいと考えています。たとえば、「second_phone」などのフィールドを作成したい場合があります。これらのフィールドは、CRMをこのアプリケーション内のフィールドにマップして、データをインポートできるようにします。

私は私が最初に思ったなぜそれが故に多少共通になりますように。これは思える...「field_sets(has_manyのフィールド)」、「フィールド」、「field_values」などのようなテーブルを作成するに

を考えています意見や既存の例を求めてください。

答えて

0

ここでは、最新のスキルレスデータベースが役立つ場合があります。私のお気に入りはMongoDBです。一言で言えば、あなたはあなたが持っているどんなデータであれ、それを持って文書を詰めることができます。ハードな思考は必要ありません。

しかし、あなたが関係国にいる場合、古典的なアプローチの1つはEAVです。

私はまた、人々はこれらの事を行う見てきました:

  • は、スキーマ内のいくつかの「オプション」フィールドを事前に定義し、必要に応じてそれらを使用しています。
  • このオプションのデータを(JSONなどを使用して)文字列にシリアル化し、テキストblobに書き込みます。
+0

セルゲイに感謝します。私はMongoDBを使いたいと思います - しかし、この場合、リレーショナルを使う必要があります。いくつかのアイデアを得るために深くあなたのrec'dを見に行く。 –

関連する問題