0

我有一个带有用户身份验证的工作 Rails 应用程序。我想自动对我的帐户进行编码,因为我将拥有管理员角色,而其他人都不会。有没有办法做到这一点?

顺便说一句,我的 db/migrate 表如下所示:

class CreateUsers < ActiveRecord::Migration
    def change
        create_table :users do |t|
            t.string :first_name
            t.string :last_name
            t.string :email
            t.string :password_digest
            t.string :role, default => 'reader'
            t.timestamps null: false
        end
    end
end
4

3 回答 3

1

rails generate migration AddAdmin添加创建特定用户 ( )的迁移(例如 using User.create(...))。

于 2016-01-24T21:25:00.150 回答
0

我认为最好的方法是使用seedrails 2.3.4 中添加的该功能

db/seeds.rb

在种子文件中,只需为 ex: 添加代码User.create(...)并运行rake db:seed

于 2016-01-25T06:04:35.387 回答
0

你可以写一个这样的方法:

class CreateUsers < ActiveRecord::Base
  def self.create_admin
  create(first_name:"xxx",last_name:"xxx",email:"xxx",password:"xxxx",
    role:"admin")
  end
end

然后你在 rails 控制台运行这个方法

于 2016-01-25T07:22:09.327 回答