访问日期()变量从rails中的日期助手发送

时间:2009-09-07 10:07:56

标签: ruby-on-rails ruby date

Hay,不确定我是否错过了rails中帮助者的观点,但是我使用了date()帮助器,现在我不知道如何访问返回的变量。

Heres the helper code

<%=date_select("game", "release_date", :order => [:day, :month, :year])%>

如何在控制器中访问返回的变量?

由于

1 个答案:

答案 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设置器结合使用。