我正在尝试运行种子文件并使用数据填充表。我的message
表看起来像这样:
id | copy_for_user_id | senders_id | recipients_id | note | created_at | updated_at | friend_request | category | observed | confirmed | rejected
我的种子文件如下所示:
Message.delete_all
Message.create!({
copy_for_user_id: 8,
senders_id: 8,
recipients_id: 9,
note: "I love you",
friend_request: false,
category: "message",
observed: false,
confirmed: false,
rejected: false
})
当我运行rake db:seed
并重新检查我的数据库时,没有任何变化。我很困惑。有什么想法吗?
答案 0 :(得分:0)
如果您想一次创建单个对象,请使用以下内容删除{}
括号
Message.create(copy_for_user_id: 8, senders_id: 8, recipients_id: 9, note: "I love you",
friend_request: false, category: "message", observed: false, confirmed: false, rejected: false)
或者
Message.create!(copy_for_user_id: 8, senders_id: 8, recipients_id: 9, note: "I love you",
friend_request: false, category: "message", observed: false, confirmed: false, rejected: false)
如果你想一次创建多个对象,那么你可以传递一个哈希数组,如
Message.create!([{copy_for_user_id: 8, senders_id: 8, recipients_id: 9, note: "I love you",
friend_request: false, category: "message", observed: false, confirmed: false, rejected: false}])
如果有任何错误,它应该引发异常,如果不起作用,您可以尝试使用模型callback
和validations
注释,然后您就可以了解发生了什么。