0
我把我的list應用程序推到github上。配置db/seeds.rb
也不創建用戶和管理員。數據庫沒有上傳到github(也不應該)。 所以我應該將所有初始設置添加到db/seeds.rb以確保所有db期望值都已到位。
另外,角色沒有在種子文件中創建,所以應用程序無法註冊用戶。
我想所有的初始設置添加到db/seeds.rb
:
Role.create({name: "Admin"})
Role.create({name: "Woeker"})
user1 = User.create!(
email: "[email protected]",
password: "12345678",
password_confirmation: "12345678"
encrypted_password: "$2a$10$7aK4tZTsCDB64qQI/kl.d.nZGwjEJPh7YlUNE8/Ty.0JhAMS.ALX6"
role_ids = [1]
)
user2 = User.create!(
email: "[email protected]",
password: "12345678",
password_confirmation: "12345678"
encrypted_password: "$2a$10$7aK4tZTsCDB64qQI/kl.d.nZGwjEJPh7YlUNE8/Ty.0JhAMS.ALX6"
role_ids = [2]
)
(該encrypted_password從鐵軌控制檯採取:U = user.last ..)
不幸的是,我不知道如果我添加了我所有的東西,並且確實如此。
在頁面localhost:3000/users/sign_up
,我必須輸入:電子郵件,密碼和密碼確認。
這些都是遷移:
class DeviseCreateUsers < ActiveRecord::Migration
def change
create_table(:users) do |t|
## Database authenticatable
t.string :email, :null => false, :default => ""
t.string :encrypted_password, :null => false, :default => ""
## Recoverable
t.string :reset_password_token
t.datetime :reset_password_sent_at
## Rememberable
t.datetime :remember_created_at
## Trackable
t.integer :sign_in_count, :default => 0
t.datetime :current_sign_in_at
t.datetime :last_sign_in_at
t.string :current_sign_in_ip
t.string :last_sign_in_ip
t.timestamps
end
add_index :users, :email, :unique => true
add_index :users, :reset_password_token, :unique => true
end
end
class Roles < ActiveRecord::Migration
def self.up
create_table :roles do |t|
t.string :name
t.timestamps
end
end
def self.down
drop_table :roles
end
end
class UserRoles < ActiveRecord::Migration
def self.up
create_table :roles_users, :id => false do |t|
t.references :role, :user
end
end
def self.down
drop_table :roles_users
end
end
任何幫助表示讚賞!
更新:這是解決方案嗎?
Role.create({name: "Admin"})
Role.create({name: "Woeker"})
user1 = User.create!(
email: "[email protected]",
password: "12345678",
password_confirmation: "12345678"
role_ids = [1]
)
user2 = User.create!(
email: "[email protected]",
password: "12345678",
password_confirmation: "12345678"
role_ids = [2]
)
我正在編輯我的主題與解決方案。告訴我它是否正確。另一件事,我必須定義角色。在導軌控制檯中,我將它定義爲:u = user.last u.role_ids = [2] u.save。所以請注意,如果我確實做到了。非常感謝你!你不知道你有多幫我! –
我對Rails也相當陌生。我甚至不知道'u.role_ids = [2]'是可能的。抱歉!我的意思是:你將不得不測試那一個。 –
好的,謝謝! :]] 還有祝你好運! –