Ich versuche meine Rails 3 App zu säen und ein Problem zu treffen. My Category Tabelle hat folgende Felder:So erstellen Sie eine Kategorie und Unterkategorie mit Rake db: Seed
Zeichenfolge "name" integer "Position" integer "parent_id"
Die parent_id ist die ID einer anderen Kategorie, für 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)
Wenn ich laufen
rake db:seed
ich den Fehler:
rake aborted!
Couldn't find Category with id=1
Tasks: TOP => db:seed
(See full trace by running task with --trace)
So, wie erstelle ich die Kategorie zuerst so die ID 1 wird verfügbar sein?
Ehrfürchtig, das hat funktioniert. Kann ich weiterhin auf second_category.id third_category verweisen oder wie referenziere ich die Elemente nach dem ersten? – ruevaughn
Ok ich habe darüber nachgedacht und ich verstehe, dass es nicht automatisch inkrementiert. Muss ich also die ID finden, um auf das zweite oder dritte Element zu verweisen? – ruevaughn
@ruevaughn Ordnen Sie die Category.create-Anweisung, die Sie erstellen, einfach einer Variablen zu und verweisen Sie dann auf die ID dieser Variablen. Die Variablennamen, die ich verwendet habe, sind willkürlich. – JamesSwift