本文介绍了如何借助迁移将数据插入表中,并且该表是之前通过另一次迁移生成的的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个包含用户名、角色和公司的角色表.我想通过新的迁移文件将数据插入到该表中,我该怎么做?
I have a role table with user name and role and company. I want to insert data into that table through a new migration file so how can i do this?
我有一个这样的代码,但我如何使用它以及我无法理解的地方.
I got a code like this but how can i use it and where i am not able to understand.
class Foo < ActiveRecord::Migration
def self.up
Users.new(:username => "Hello", :role => "Admin")
end
def self.down
Users.delete_all(:username => "Hello")
end
end
推荐答案
这个:
Users.new(:username => "Hello", :role => "Admin")
不会将数据插入到您的表中.它只是创建一个用户对象.要插入数据,您必须在您创建的对象上调用 save
:
does not insert data into your table. It merely creates a user object. To insert the data you have to call save
on the object you create:
Users.new(:username => "Hello", :role => "Admin").save
或者更好的是,使用 create
而不是 new
:
Or better yet, use create
instead of new
:
Users.create(:username => "Hello", :role => "Admin")
这篇关于如何借助迁移将数据插入表中,并且该表是之前通过另一次迁移生成的的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!