ActiveRecordでRestaurantとmenuとimageという3つのモデルがあります
レストラン(restaurant)には複数のメニュー(menu)があり、メニューには1枚だけ写真を設定できる(nilの場合もある)という使い方です。
メニューをソートをしたいのですが、写真(image)があるのものから順番にソートする時にはどのようなクエリを書けば良いのでしょうか。。。
restaurant.rb
ruby
1class Restaurant < ApplicationRecord 2 # id 3 # name 4 5 6 has_many :menu 7end
menu.rb
ruby
1class Menu < ApplicationRecord 2 # id 3 # restaurant_id 4 # name 5 6 has_one :image 7 belongs_to :restaurant 8end
image.rb
class Image < ApplicationRecord # id # menu_id # image_path belongs_to :menu end
大変お手数おかけしますが、
わかる方いらっしゃいましたら、教えてもらえますと幸いです。。。
最終的に行いたいことは写真付きのメニューはAの場所(5メニューが上限)に配置し写真なしの場合にはBの場所に配置することです。
例えばmenuが合計20件あり、そのうちimageが設定されているのが7件あった場合、先頭から5番目までのimage付きmenuはAの場所に、それ以外の15件はBの場所に配置するということです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/04/30 23:41