Ruby on rails Rails插入/更新缺少参数

Ruby on rails Rails插入/更新缺少参数,ruby-on-rails,activerecord,rails-activerecord,Ruby On Rails,Activerecord,Rails Activerecord,我第一次看到这种行为。进行插入时,插入缺少一个参数。这是我的模型和控制器 型号 class Campaign < ApplicationRecord belongs_to :supplier has_many :campaign_offices has_many :campaign_plans has_many :campaign_plan_tiers end insert或update语句中都没有结束日期。它被省略了。该列存在于数据库中,迁移也会列出该列。我也启动了服务

我第一次看到这种行为。进行插入时,插入缺少一个参数。这是我的模型和控制器

型号

class Campaign < ApplicationRecord
  belongs_to :supplier
  has_many :campaign_offices
  has_many :campaign_plans
  has_many :campaign_plan_tiers
end
insert或update语句中都没有结束日期。它被省略了。该列存在于数据库中,迁移也会列出该列。我也启动了服务器,但事情是一样的。从上面粘贴的模型代码可以看出,模型中没有回调

环境是mysql、rails 5.1.6、ruby 2.4.0

我以前从未见过这种情况。任何帮助都将不胜感激


谢谢

如果您查看
开始日期的参数
,我们会看到:

"start_date"=>"05/01/2018"
在INSERT语句中,我们可以看到ISO-8601格式的
开始日期

'2018-01-05'
输入格式被解释为
DD/MM/YYYY
。如果我们查看
结束日期
,我们会看到:

"end_date"=>"05/31/2018"
这是
MM/DD/YYYY
而不是
DD/MM/YYYY
。当您的模型尝试使用
DD/MM/YYYY
格式将其解析为一个日期时,它变得毫无意义,并且该日期被忽略


最好的选择是在除显示之外的任何地方使用ISO 8601日期格式(
YYYY-MM-DD
)。修复客户端或控制器(如有必要)中的格式。

它是否适用于开始日期?能否为活动添加适当的迁移?能否了解
活动
表在
schema.rb
文件中的外观。我觉得你的表格中没有“结束日期”一栏,非常感谢。这正是问题所在。
'2018-01-05'
"end_date"=>"05/31/2018"