【发布时间】:2015-04-21 11:16:39
【问题描述】:
在我的 Ruby on Rails 应用程序中,我有一个影院应用程序,并试图用显示日期不是过去的电影填充下拉菜单。
在我的 _form.html.erb 中,我有一个尝试使用 live_films 方法的下拉菜单:
<%= f.grouped_collection_select :showing_id, Film.order(:title).live_films, :showings, :title, :id, :showing_times %>
方法在application_controller中:
helper_method :active_menu, :live_films
def live_films
Film.includes(:showings).where.not(showings.show_date < Date.today)
end
我也怀疑我的方法行不通,所以我欢迎有关让它发挥作用的建议。
我做错了什么?
【问题讨论】:
-
看起来您想要在
Film模型上命名范围,然后您可以将订单链接到方法 guides.rubyonrails.org/active_record_querying.html#scopes
标签: ruby-on-rails ruby class methods controller