配列の配列は[["2","3"], ["3","1"], ["6", "1"]]
です。各サブアレイの最初の要素はユーザーIDであり、2番目の要素はユーザーがイベント用に予約した座席数です。 各ユーザーが自分のIDをアレイで見つけて自分の予約を閲覧できるようにしたい。私は2つのモデルがあるとしましょう:ユーザーとイベント。ユーザーコントローラーで@mybooking = Event.mybooking(current_user.id)
のようなスコープを使用したいのですが、問題はイベントモデルに適切なスコープを書き込む方法です。 また、ユーザーが見つかった場合は、2番目の要素も使用したいと考えています。Rails:スコープを使って配列の配列内の要素を見つける方法
私は別のソリューションを試しましたが、うまくいかなかったのです!スコープを使用することができないと思っている場合や、別の種類のソリューションがある場合はお知らせください。
編集: 私はまだ機能するソリューションを待っているように、私は私がこのような何かを探していますことを言及する必要があります:
scope :mybookings, ->(id){where("reservations.to_enum.map{|n,m| n} ?", id)}
または
scope :mybookings, ->(id) { where("reservations.map(&:first) ?", id) }
これら二つのドン私は「....」の部分に関係するエラーのために仕事をしません。 そして、以下の解決策は真ではありません。ユーザーのコントローラーからイベントのスコープを呼び出すためです。この変数はイベントコントローラー用であるため、コントローラーでreservations
を使用することはできません。
'スコープ:mybooking、 - >(current_user_id){USER_ID:current_user_id}' – mudasobwa
それは本当ではない@mudasobwa!もう一度質問をチェックしてください! –