2011-07-14 36 views
0

我在一個簡單的rails項目上工作的用戶有一個名爲is_admin的屬性,並且is_admin不能通過mass asignment(atr_assecsible)進行分配。這裏的問題是,我想創建一個值爲is_admin => true的默認用戶,如果因爲受保護的屬性(:is_admin)而可能從遷移文件中刪除,我也不會。以便我運行耙路軌:設置它創建遷移和默認管理員用戶。rails中的質量分配3.1

回答

2

據我所知,遷移不使用集體分配。我不明白爲什麼你會遇到這樣的問題。

+0

謝謝剛想在嘗試之前確定。 – Uchenna

0

如果您使用的是最新的Rails版本:

MyModel.create({my_attr: 1, is_admin: true}, without_protection: true)} 

,或者你可以看看到爲:選項

attr_accessible :is_admin, as: :admin 
MyModel.create({my_attr: 1, is_admin: true}, as: :admin)} 
+0

你的第二行代碼是它的遷移文件,請問你正在傳遞什麼是my_attr:1 – Uchenna

+0

我建議使用rake db:seed任務並編輯你的seeds.rb文件來創建默認對象。 my_attr只是一個例子。 – kain

0

BTW,without_protection參數只能on Rails的3.1