gpt4 book ai didi

ruby-on-rails - RoR 3 - 从一组 child 中查找 parent 列表

转载 作者:行者123 更新时间:2023-12-04 03:52:32 24 4
gpt4 key购买 nike

我有两个具有典型关系的模型:

menu_options 模型:

class MenuOption < ActiveRecord::Base
belongs_to :category
end

类别模型:
class Category < ActiveRecord::Base
has_many :menu_options
end

我在一个部分中显示类别,然后在另一个部分中显示 menu_options。我目前正在通过遍历 menu_options 并收集与此代码一起显示的所有类别来跳过空类别:
@menu_options = MenuOption.select_by_user_level(user_level)
categories = []
@menu_options.each do |m|
categories << m.category
end
@categories = categories.uniq

我一直在使用类似的方法来做这件事,我想知道是否有更多的方法来做到这一点?

**解决了:
我忽略了“select_by_user_level”方法使用了不等式。我采用了你们提供的代码,并对其进行了更新以摆脱该方法,并将 .uniq 合并到用于选择类别的行中。结果如下。谢谢你的帮助!
@categories = Category.joins(:menu_options).where('menu_options.minimum_user_level <= ?', @user.user_level ).uniq
@menu_options = MenuOption.where('minimum_user_level <= ?', @user.user_level)

最佳答案

您可以简单地使用 :user_level = user_level 选择具有 menu_option 的类别

@categories = Categories.joins(:menu_options).where(:menu_options => { :user_level => user_level })

关于ruby-on-rails - RoR 3 - 从一组 child 中查找 parent 列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6510929/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com