2012-11-20 10 views
9

używamRuby on Rails: jak stworzyć tabelę dla nowego modelu

rails generate model mynewmodel string:name string:description 

wygenerować nowy model. W jaki sposób mogę wdrożyć ten nowy model do mojej bazy danych projektu? Mam już kilka baz danych w moim dblite db.

Próbowałem

rake db:migrate 

wydawało kłopoty do generowania tej nowej tabeli w db.

aktualizacja: dodany komunikat błędu

== CreateMynewmodels: migrating =============================================== 
-- create_table(:mynewmodels) 
rake aborted! 
An error has occurred, this and all later migrations canceled: 

undefined method `name' for #<ActiveRecord::ConnectionAdapters::TableDefinition:0x3ad5c50> 

Tasks: TOP => db:migrate 

Dzięki

+0

Co robisz jest poprawne ('rake db: migrate'). Nie możemy pomóc bez wyświetlania komunikatów o błędach. – meagar

+0

zaktualizowany komunikat o błędzie – icn

+0

Czy uruchomiłeś 'rake db: create' first? – Casper

Odpowiedz

15

kolejność nazwa_pola: typu combo jest nieprawidłowy. Spróbuj

rails generate model mynewmodel name:string description:string 
+0

Dziękuję za połów :) – icn

+0

WOw. Wszyscy byliście w wyścigu najwyraźniej, aby odpowiedzieć na to pytanie. You WON! –

3

Błąd w rails generate model mynewmodel string:name string:description

Należy zamienić string i name

rails generate model mynewmodel name:string description:string

2

Korzystając name:string zamiast string:name samym do opisu

0

Świetny artykuł dla zaawansowanych użycia: Advanced Rails model generators

Zwróć uwagę, że trzeba owinąć cenę parametru: dziesiętny {10,2} do cytatów. Jest to niezbędne i możesz mieć nieprawidłowe zachowanie generatora, jeśli tego nie zrobisz.