Ruby on rails 文本表单字段,数据库中的日期列?
下面的代码取自Ryan Bates关于在Rails应用程序中制作日历的修订集。如果你不熟悉他的剧集格式,他会为他制作的项目发布“之前”和“之后”的源代码。在本集中实现jquery日期选择器时,他将Ruby on rails 文本表单字段,数据库中的日期列?,ruby-on-rails,Ruby On Rails,下面的代码取自Ryan Bates关于在Rails应用程序中制作日历的修订集。如果你不熟悉他的剧集格式,他会为他制作的项目发布“之前”和“之后”的源代码。在本集中实现jquery日期选择器时,他将字段更改为,我想这是jquery日期选择器的一个要求。但是,查看“after”代码的模式时,published_on列仍然是“date”列,而不是“text”字段。这似乎很奇怪,因为表单字段变成了文本字段,或者这是“推荐”的方式吗?如果表单字段是日期的文本字段,请提供一些关于db列应该是什么的指导
字段更改为
,我想这是jquery日期选择器的一个要求。但是,查看“after”代码的模式时,published_on
列仍然是“date”列,而不是“text”字段。这似乎很奇怪,因为表单字段变成了文本字段,或者这是“推荐”的方式吗?如果表单字段是日期的文本字段,请提供一些关于db列应该是什么的指导
<div class="field">
<%= f.label :published_on %><br />
<%= f.text_field :published_on %>
</div>
ActiveRecord::Schema.define(:version => 20120810222509) do
create_table "articles", :force => true do |t|
t.string "name"
t.date "published_on"
t.text "content"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
end
ActiveRecord::Schema.define(:version=>20120810222509)do
创建表“articles”:force=>true do | t|
t、 字符串“name”
t、 “发布日期”
t、 文本“内容”
t、 datetime“created_at”,:null=>false
t、 datetime“updated_at”,:null=>false
结束
结束
我一直使用jQuery Datepicker,并使用表单中的文本字段和模型属性作为日期字段。它起作用了。Rails将自动以正确的格式解析值。如果在正确保存到数据库时遇到任何问题,可以使用jQuery Datepicker指定格式
还有一些gem可以验证文本字段的日期格式。我遇到了一个场景,其中我还使用了时间选择器。这个场景确实抛弃了rails中内置的默认日期解析。下面是我在Stack O上提出的问题的链接
rails提供的date_字段帮助器将三个下拉选择的值连接成一个字符串,带有一个文本字段,日期选择器将为您完成这项工作