Hay,不确定我是否错过了rails中帮助者的观点,但是我使用了date()帮助器,现在我不知道如何访问返回的变量。
Heres the helper code
<%=date_select("game", "release_date", :order => [:day, :month, :year])%>
如何在控制器中访问返回的变量?
由于
答案 0 :(得分:5)
date_select
助手使用Rails调用的多参数属性。也就是说,release_date
属性的值在由date_select
帮助程序创建的日,月,年的3个下拉列表中分割。 date_select
按照惯例命名3个下拉列表,以便在控制器中执行以下操作:
@game = Game.new(params[:game])
并且新游戏的release_date
属性将填充所选日期。
或
@game.update_attributes(params[:game])
更新现有记录。
如果您检查params或查看日志文件,您将看到3个单独的组件:
params["game"]["release_date(1i)"] # the year
params["game"]["release_date(2i)"] # the month
params["game"]["release_date(3i)"] # the day
虽然您可以直接访问这些单独的元素,但这似乎不是一个好主意。 date_select
帮助器实际上设计为与创建新对象或更新属性时使用的attributes=
ActiveRecord设置器结合使用。