2015-01-19 21 views
5

Bölüm 2'deki egzersizler üzerinde çalışan Rails Eğiticisinde çalışıyorum ve şaşırıyorum. Raylar Eğitimi - 2.5.2 Validaiton egzersizini işe alamıyorum

Atama 2 Güncelleme Kullanıcı modelinde adı ve e-posta niteliklerin varlığını doğrulamak için uygun kodu ile FILL_IN değiştirerek 2.19 Liste" diyor www.railstutorial.org/book/toy_app#sec-toy_app_exercises (Şekil 2.20) . "

ve bu oldukça yalındır İlanı 2.19: Ben tipik çaylak hataydı ve sadece düz listeden çıkmayı kodunda kopyalanan yaptılar

Adding presence validations to the User model. app/models/user.rb 
class User < ActiveRecord::Base 
    has_many :microposts 
    validates FILL_IN, presence: true 
    validates FILL_IN, presence: true 
end 

ilk şey. Sistem geri geldi ve bana "FILL_IN" değişkeninin ne olduğunu sordu. i did

sonraki şey, için ' "tanımsız yerel değişken veya yöntem` e-posta "NameError UsersController içerisinde yaratmak"

class User < ActiveRecord::Base 
    has_many :microposts 
    validates name, presence: true 
    validates email, presence: true 
end 

Running this, gets me a the following error benim user.rb dosyasında alan adlarında koymayı deneyin etmekti # "

Raylar, e-postayı tanıyamadığı veya modelimin alan adını belirttiği gibi davranıyor.

Adı ve E-postayı aktifleştirmeyi denedim, çoğul hale getirmeye çalıştım, "ad" ve "e-posta" alanlarını doğru şekilde oluşturduğumu doğrulamak için "konsol konsolu" na gitmeyi denedim (yaptım). Bunun bir cevap arayan çalıştılar

, geldim dolap someone just pasting in the FILL_IN lines and getting harpooned for it.

ben tıpkı belirgin bir şey cevapsız değil umuyorum, ama yapsam bunun için hazırım.

+0

Db şemanınız nedir? –

+3

'validates kullanın: name, presence: true',' validates: email, presence: true' (sütun isimleri için sembol kullandım) – cristian

cevap

10

@ Octopus-Paul Harika, kolon (:) değişken isimlerden önce tam olarak ihtiyacım olan şey.

class User < ActiveRecord::Base 
    has_many :microposts 
    validates :name, presence: true 
    validates :email, presence: true 
end 
+0

Aynı şey bana da oldu! – skwidbreth