Ruby on rails 在Rails 5中呈现datetime列的日期和时间字段
我读了很多书,也尝试了很多,但没有找到解决办法 任务很简单: 我在datetime的格式中安排了一个列 我希望将表单中的datetime字段分为两个字段:一个用于日期,另一个用于时间,而不是一个字段。在我的表中,我希望将其保留为一个datetime字段 因此,在某个时刻,我必须加入日期和时间对日期时间。因为我的模型中有datetime的验证,所以我不能加入控制器 我试过几件事:Ruby on rails 在Rails 5中呈现datetime列的日期和时间字段,ruby-on-rails,datetime,simple-form,ruby-on-rails-5,Ruby On Rails,Datetime,Simple Form,Ruby On Rails 5,我读了很多书,也尝试了很多,但没有找到解决办法 任务很简单: 我在datetime的格式中安排了一个列 我希望将表单中的datetime字段分为两个字段:一个用于日期,另一个用于时间,而不是一个字段。在我的表中,我希望将其保留为一个datetime字段 因此,在某个时刻,我必须加入日期和时间对日期时间。因为我的模型中有datetime的验证,所以我不能加入控制器 我试过几件事: 创建属性访问器(但我找不到在模型中加入日期和时间的方法) 通过浏览器端的JS找到一些插件来解决这个问题 ,但它也不会
- 创建属性访问器(但我找不到在模型中加入日期和时间的方法)
- 通过浏览器端的JS找到一些插件来解决这个问题
- ,但它也不会加入值
class YourClass < ActiveRecord::Base
before_validation(on: :create) do
self.your_field = do_stuff
end
end
classyourclass
您可以在rails指南中阅读更多信息。为什么不能在控制器中加入此功能?您可以同时允许date和time参数,然后这样做:将它们加入到controllery中,这就是我以前所做的。但我有一些验证规则要在这个日期时间运行。据我所知,最好是将这些内容放入模型中……是的,验证应该在模型中,但在将字段添加到对象(并因此触发验证)之前,可以在控制器中组合参数。当然……验证仅在调用save()时运行……谢谢!