Ruby on rails 在每个循环中仅显示活动(布尔)项
这是我的循环。在我的区域页面上,我显示了所有有活动、事件等的城市Ruby on rails 在每个循环中仅显示活动(布尔)项,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,这是我的循环。在我的区域页面上,我显示了所有有活动、事件等的城市 - @cities.each do |city| %li %h4.h6.icon_mappoint = link_to city.name, region_city_path(@region, city) %ul - city.events.each do |thing| %li = link_to event.name, regi
- @cities.each do |city|
%li
%h4.h6.icon_mappoint
= link_to city.name, region_city_path(@region, city)
%ul
- city.events.each do |thing|
%li
= link_to event.name, region_city_event_path(@region, city, event)
%ul
- city.activities.each do |activity|
%li
= link_to activity.name, region_city_activity_path(@region, city, activity)
每个事件和活动模型在数据库中都有一个名为active的属性。(布尔值)。并且只希望在视图中显示活动的事件和活动
我的控制器现在看起来像这样
def show
@region = Region.find(params[:id])
@cities = @region.cities
end
模型
region has_many cities
city has_many events, activities
如何仅显示活动事件,每个循环中的活动?而不是
city.events.each
使用city.events.select{x | x.active}。each
而不是city.events.each
使用city.events.select{x | x.active}。如果向事件
和活动
模型添加范围,则每个
scope :active, where(:active => true)
你可以像这样写你的观点
city.events.active.each do |thing|
及
如果向事件
和活动
模型添加范围
scope :active, where(:active => true)
你可以像这样写你的观点
city.events.active.each do |thing|
及
谢谢您还知道如何将活动事件和活动组合到一个循环中吗。例如,将每个城市的所有活动项目存储在@active_items?中,谢谢。您还知道如何将活动事件和活动组合到一个循环中吗。举例来说,将每个城市的所有活动项目存储在@active\u items中?谢谢,您还知道我如何将活动事件和活动组合到一个变量中,如@events\u activities?谢谢,您还知道我如何将活动事件和活动组合到一个变量中,如@events\u activities?