为什么在尝试使用 application_controller 中的方法时会出现错误?
Why do I get an error when trying to use a method in application_controller?
在我的 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
我还怀疑我的方法行不通,所以我欢迎提供有关使其发挥作用的建议。
我做错了什么?
您应该在 live_films
方法调用的结果上调用 order
作为:
<%= f.grouped_collection_select :showing_id, live_films.order(:title), :showings, :title, :id, :showing_times %>
在我的 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
我还怀疑我的方法行不通,所以我欢迎提供有关使其发挥作用的建议。
我做错了什么?
您应该在 live_films
方法调用的结果上调用 order
作为:
<%= f.grouped_collection_select :showing_id, live_films.order(:title), :showings, :title, :id, :showing_times %>