2016-07-09 11 views
0

Ruby on Railsの新機能です。私は比較的簡単な質問があります。私はユーザーをモデリングしています。私は、ユーザーが編集可能で、プロフィールに表示される短い「プロフィールメッセージ」を持つことができるようにしたい。 ProfileMessageを独自のモデルにすることは理にかなっていますか?または、profile_messageは、ユーザー設定を含む表の1つの列にする必要がありますか?Ruby on Rails:1つのフィールドで独自のモデルを取得する必要がありますか?

私は1つの文字列のためのちょっとした冗談だと感じています。そのルートを開始すると、多くのモデルが煩雑になります。

コミュニティは何を考えていますか?

+0

あなたはすでに答えを知っていると思います。プロファイルメッセージのためだけに新しいモデルを追加することで、過剰な作業になり、クエリに大きな重みが加わります。 Userモデルの文字列/テキストフィールドに移動するだけで大​​丈夫です。 –

答えて

1

私は、あなたのデータ構造をできるだけ単純なものにしています。プロファイルメッセージの場合は、それが自分のモデルであることはあまり意味がありません。後でprofile_messageがそれ自身の属性と振る舞いを持っている場合、またはユーザーが複数のプロファイルメッセージを持つことができる場合は、別のモデルに移動することを検討します。

+0

ありがとうございます。最高の答えがコミュニティに決定されるようにします。私は裁判官として適任ではないと感じているからです。 – lostinthecloud

0

SQLのテーブル結合は、それらを適切に使用していないときに多くのリソースを消費します。あなたの場合、私は1つのprofile_messageのための新しいモデルを作ることは良い習慣ではないと思う。しかし、それはユーザー/プロフィールモデルの内部に実装されるべきである。

このアプローチでは、profile_messageにテーブル全体を使用すると、応答時間が遅くなります。これは、profileMessagesテーブルで毎回探す必要があるためです。そのテーブルのエントリ数に応じて時間がかかります。

+0

ありがとうございました。最高の答えがコミュニティに決定されるようにします。私は裁判官として適任ではないと感じているからです。 – lostinthecloud

関連する問題