【问题标题】:How can i filter a resource and it's nested resources in rails 3?我如何过滤资源及其在 Rails 3 中的嵌套资源?
【发布时间】:2011-03-23 22:23:12
【问题描述】:

我有类别,每个类别都有属于它们的资源。我想对所有类别使用一个范围,并对其资源使用不同的范围。

这是我正在尝试做的一个例子:

categories = Category.find_all_by_name('something').resources.find_all_by_resource_type_id(3)

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 filter scope find


    【解决方案1】:

    你的帖子不是很清楚

    我的猜测是,您可能想要具有“某物”名称的类别,并且它们的资源是预先加载的。为此使用:

    Category.where(:name => 'something').includes(:resources)
    

    或者,如果你想为那些“东西”类别指定你想要的资源,你可以使用这个:

    Category.includes(:resources).where(:name => 'something', :resources => {:resource_type_id => 3})
    

    更多关于active record querying, here的信息

    【讨论】:

    • 唯一的问题是我正在尝试使用 cancan 缩小类别资源,因此我需要将 .accessible_by(current_ability) 和其他范围应用于类别资源。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-23
    • 1970-01-01
    • 1970-01-01
    • 2018-05-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多