2016-11-25 1 views
0

私は予約システムを持っていて、イベントのチケットを購入する人のuser_idを、ハッシュの配列で購入したチケットの数で保存したいと思います。だから、それは次のようになります:それはUSER_ID 1は、このイベントで3席を予約することを意味しRails:スコープを使用したハッシュの検索

[{"id" => "1", "no" => "3"}, {"id" => "4", "no" => "2"}]

...

私が使用しているデータベースはPostgreSQLのだと私はとtext, array: trueとしてこのフィールドを定義しpsqlの配列の機能を使用するためのreservationsという名前

問題は、このフィールドを検索して各ユーザーに予約と対応する数量を表示することです。私はイベントモデルでスコープを定義し、それをUserコントローラから呼び出す必要があります。その結果、各ユーザは自分のダッシュボードで自分の予約を見ることができます。私は多くの方法を試しましたが、まだ問題があります。どんなアイデアや助けも素晴らしいだろう。

答えて

0

分割テーブルを作成してそこに保存すると、user_idseats_countとなります。名前はUserReservationとすることができます。その後、Userモデルを更新し、

class User 
    has_many :user_reservations 
end 

を持っているので、簡単にcurrent_user.user_reservations.joins(:event)

+0

感謝を呼び出すことで、すべてのユーザーの予約を取得することができ、それは別の解決策だが、それはそれは配列やハッシュを使用して行うことは可能だ場合、私は知りたいと思ったことができます(別のテーブルを追加することなく)。 –

関連する問題