如何在没有模型的情况下使用date_select?

时间:2012-08-21 02:44:05

标签: ruby-on-rails forms date

我有一个表格,我想要一个日期。控制器定义的日期是@date_end。我希望这个日期在表单中,但没有AR模型,这似乎真的很难。我以前用这个:

  = date_select :date_end_, nil, :default => @date_end

但这仅在您的'名称'与实例var不同时才有效。如果它们相同,则会出现“实习字符串”错误。

我发现解决此问题的唯一方法是向Object添加一个返回self的方法

class Object
  def get_self 
    self 
  end
end

然后我可以做:

  = date_select :date_end, :get_self

但我们都知道这是愚蠢的。但似乎没有另一种方式......

有什么建议吗?

1 个答案:

答案 0 :(得分:2)

这样的事情可以解决这个问题:

= select_date Date.today, :prefix => :date_end

根据this documentation,在“4.1 Barebones Helpers”部分下,使用此特定帮助程序将为日,月年份创建一系列选择标记。名称最终应该看起来像“date_end [day]”,“date_end [month]”......等等。如果有帮助,请告诉我。