【发布时间】:2018-06-21 20:58:37
【问题描述】:
我正在使用find_or_create_by 块。
如果没有找到作为参数传递的带有webinar_id 的 TrainingEvent 记录,Rails 应该使用块中传递的所有属性创建一个新的 TrainingEvent。
Rails 创建记录,但第一个属性在数据库中始终为 nil。
Rails 5.2.0
红宝石 2.4.1p111
TrainingEvent.find_or_create_by(webinar_key: '2345') do |training_event|
training_event.start_date_time = '2018-07-04 12:00:00',
training_event.end_date_time = '2018-07-04 13:00:00',
training_event.published = true,
training_event.hidden_from_list = false,
training_event.training_template_id = 349,
training_event.organizer_key = '6789'
end
start_date_time 不在 SQL 中,最终在数据库中为零。无论哪个属性在块中第一个,其值始终为 nil。
【问题讨论】:
-
(1) 请不要在问题中包含文本的屏幕截图,文本本身会更易于阅读和使用。 (2) 为什么你的代码块中有那么多尾随逗号?
标签: ruby-on-rails ruby activerecord