本文介绍了如何借助迁移将数据插入表中,并且该表是之前通过另一次迁移生成的的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个包含用户名、角色和公司的角色表.我想通过新的迁移文件将数据插入到该表中,我该怎么做?

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")

这篇关于如何借助迁移将数据插入表中,并且该表是之前通过另一次迁移生成的的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-24 12:22