2013-05-05 22 views
14

Raylarda yeni bir tablo oluşturmaya çalışıyorum.Raylarda Ruby'de yeni Tablo oluştur

rails generate model content content_id:auto-generated, law_id:integer, parent_id:integer, titel:string, text:string, content:string, url:string 
: (Ben Ruby sürüm 1.9 ve Raylar Versiyon 3.2.13 terminalde yeni bir model yapma kullanın: Ben bulup ne yazık ki denemek Her örnek benimle çalışmaz ... böylece şu ana kadar çalıştığı şey budur aşağıdaki kodu oluşturulan

:

class CreateContents < ActiveRecord::Migration 
    def change 
    create_table :contents do |t| 
     t.auto-generated, :content_id 
     t.integer, :law_id 
     t.integer, :parent_id 
     t.string, :titel 
     t.string, :text 
     t.string, :content 
     t.string :url 

     t.timestamps 
    end 
    end 
end 

ben db komisyon çalışırsanız i aşağıdaki hata mesajı alıyorum göç: Ben kaldırırsanız

syntax error, unexpected ',', expecting keyword_end 
     t.auto-generated, :content_id 
        ^

"" Ben bu olsun Hata mesajı:

: Ben bu hata mesaj almak örnekle db komisyon çalışırsanız

class CreateContents < ActiveRecord::Migration 
    def change 
    create_table :contents do |t| 
     t.auto-generated "content_id" 
     t.integer "law_id" 
     t.integer "parent_id" 
     t.string "titel" 
     t.string "text" 
     t.string "content" 
     t.string "url" 

     t.timestamps 
    end 
    end 
end 

:

syntax error, unexpected tSYMBEG, expecting keyword_do or '{' or '(' 
     t.auto-generated :content_id 
         ^

araştırmalarım bir tablo oluşturma bu şekilde de beni

syntax error, unexpected tSTRING_BEG, expecting keyword_do or '{' or '(' 
     t.auto-generated "content_id" 
         ^

Neyi yanlış yapıyorum? Bir sütun türü desteklenmiyor

cevap

17

auto-generated, desteklenen bir sütun türü değil.

Active kayıt aşağıdaki veritabanı sütun türlerini destekler:

:binary 
:boolean 
:date 
:datetime 
:decimal 
:float 
:integer 
:primary_key 
:string 
:text 
:time 
:timestamp 

diğer bilgiler http://guides.rubyonrails.org/migrations.html#supported-types yılında

Raylar, sizin için otomatik olarak sütun kimliği oluşturmak, böylece sadece aşağıdaki

class CreateContents < ActiveRecord::Migration 
    def change 
    create_table :contents do |t| 
     t.integer "law_id" 
     t.integer "parent_id" 
     t.string "titel" 
     t.string "text" 
     t.string "content" 
     t.string "url" 

     t.timestamps 
    end 
    end 
end 
için göç düzenleyeceksiniz
+0

Teşekkürler, hile yaptım! – Eumundi

1

Diğerlerinin dediği gibi, :auto-generated desteklenen bir sütun türü değil. Ayrıca, sembolü değil, ifade ve :auto - generated olarak ayrıştırılır.

0

Komut satırı çağrılarınıza, virgül jeneratörüne çağrı yapmayın, bu geçişleri bu virgüllere yerleştirirsiniz.