ruby-on-rails - rails - postgres 或 rails 是否自动验证 datetime 列只能有 datetime 对象?

标签 ruby-on-rails validation orm ruby-on-rails-4 rails-postgresql

我有一个 Rails 4 表单,用户在其中输入一个表示日期时间的字符串:

<%= f.text_field :time_frame, class: "calender_pop" %><br />

在我的代码中没有将字符串转换为日期时间的地方。我尝试在字段中输入非日期时间输入(即整数、字符串等),但日期时间不接受它们。如果我尝试输入非日期时间值,日期时间变为零。这很好,但我很困惑,因为我从来没有写过任何这样的验证。我以前使用过 postgres 并且能够将整数放入字符串列中,所以我不知道 postgres 或 rails 有任何自动验证。

  1. postgres 或 rails 会自动验证日期时间吗?
  2. time_frame 列中填充的是字符串还是日期时间?

我也在使用查询日期时间选择器插件,但我认为这与数据类型没有任何关系。

更新:

我跑了:

Task.last.time_frame.is_a? Time

它返回了 true。

所以问题 3。发生了什么事?它如何以及何时转换为时间?

更新:

我刚刚读到 postgres 实际上没有日期时间类型。它可能与更改数据类型的 orm 有关吗?

最佳答案

关于ruby-on-rails - rails - postgres 或 rails 是否自动验证 datetime 列只能有 datetime 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20387746/

相关文章:

ruby-on-rails - Michael Hartl 的 Rails 教程 : User. find(1) 在 destroy 方法后显示堆栈跟踪

jQuery 验证插件 : Element with Error has same CSS attributes as my Wrapper Target

sql - 更改多个表的列长度

sql - Rails + PostgreSQL SSL 解密失败

ruby-on-rails - 使用Arel创建WHERE(列)IN(值)子句?

javascript - 如何访问使用 vee-validate 验证的自定义输入组件上的错误计算属性?

validation - JSF 复合组件验证

php - 小花 3 ORM : constructor "after load"

mysql - 需要帮助构建奇怪的 Sequelize 查询

ruby-on-rails - 为 Devise 用户创建配置文件