0

Heroku コンソールに入り、User.create(name: "admin", email: "admin@tradespring.net", admin: true) でユーザーを追加してみました。これらはすべて私のユーザーテーブルの有効な列であり、管理者ユーザーをローカルに作成するのに問題はありません (別の方法で作成すると思います。これが私に与えられるものです.

irb(main):001:0> User.create(name: "admin", email:"admin@tradespring.net", admin: true)
WARNING: Can't mass-assign protected attributes: admin
   (57.4ms)  BEGIN
  User Exists (12.4ms)  SELECT 1 FROM "users" WHERE LOWER("users"."email") = LOWER('admin@tradespring.net') LIMIT 1
   (30.3ms)  ROLLBACK
=> #<User id: nil, name: "admin", email: "admin@tradespring.net", created_at: nil, updated_at: nil, password_digest: nil, remember_token: nil, admin: false>

明らかに、管理者設定は false に設定されているため機能しませんでした。また、自分のサイトにアクセスしても、admin という名前の新しいユーザーはいません。とはいえ、正しい手順を踏んでいるかどうかさえわかりません。私が間違っている/していないことは何ですか?

4

1 に答える 1

1

User.create({name: "admin", email:"admin@tradespring.net", admin: true}, :without_protection => true)

別の方法は、属性を 1 つずつ設定することです。

u = User.new
u.name = "admin"
u.email = "admin@tradespring.net"
u.admin = true
u.save! 
于 2012-08-12T03:33:06.867 に答える