我想讓我的rails 3應用程序種子,並且遇到問題。我的類別表有以下字段:如何使用rake數據庫創建類別和子類別:種子
字符串「name」 整數「位置」 整數「PARENT_ID」
的PARENT_ID是另一類別的ID,用於nested_set。
Seeds.rb
Category.delete_all
Category.create(:name => "Category 1",
:position => 1,
:parent_id => nil)
Category.create(:name => "Subcategory 1",
:position => 1,
:parent_id => 1)
當我運行
rake db:seed
我得到的錯誤:
rake aborted!
Couldn't find Category with id=1
Tasks: TOP => db:seed
(See full trace by running task with --trace)
那麼,如何我首先創建類別,因此ID 1將能得到的?
太棒了,工作。我可以繼續像那樣繼續引用second_category.id third_category,或者我如何引用第一個元素之後的元素? – ruevaughn 2012-04-03 04:40:23
好吧,我已經考慮過它,我明白它不會自動增量。那麼我需要找到ID來引用第二個或第三個元素? – ruevaughn 2012-04-03 04:48:14
@ruevaughn只需將您正在創建的Category.create語句分配給一個變量,然後引用該變量的ID即可。我使用的變量名是任意的。 – JamesSwift 2012-04-03 04:51:39