私はちょっとしたことで苦労していて、どうやってやるべきか分かりません。 私はUserとStatusテーブルを持っています。そして、すべてのステータスを保持するStatusListテーブルを追加するべきだと思っています。ユーザーはユーザーデータを保持しますが、ステータスは現在のユーザーステータスを保持します。だから、次のようになります。Rails。データベースにリストを保持するのはいい考えですか?どのような関係を使用すべきですか?
Table User id, name, email
Table Status user_id, status_list_id
Table StatusList id, name
そして、私のような関連性を考えていた:
User
has_one :status
has_one :status_list, through: :status
Status
belongs_to :user
has_one :status_list
StatusList
belongs_to :status
しかし、私は期待するように、これは動作しません。
@u = User.last
@u.status # => "id: 1"
@u.status.status_list # => No such column "status_lists"
しかし、私は、私は[ 'ユーザー'、 'ステータス'、 'status_lists']を参照のActiveRecord :: Base.connection.tablesをチェックすると:私はしようとすると、私が意味します。だから私はGoogleでその問題を解決するために探し始めるが、私は何を見つけることができないので、私はここで尋ねている、この関係はどのように見えるのだろうか?私のアイデアが良いのであれば、私は期待どおりに働いていないのですか?
解決策を見つけるのに役立つヒントがありがとうございます。ここ