İçinde dernekler/öznitelikler varsa, onları aramak istediğiniz bir kayıt formum var. Ben de bu sınıfların bazı doğrulama şeyler varRaylar: Genel "X geçersiz" doğrulama hatalarından kurtulmak
class User < ActiveRecord::Base
acts_as_authentic
belongs_to :user_role, :polymorphic => true
end
class Customer < ActiveRecord::Base
has_one :user, :as => :user_role, :dependent => :destroy
accepts_nested_attributes_for :user, :allow_destroy => true
validates_associated :user
end
class Employee < ActiveRecord::Base
has_one :user, :as => :user_role, :dependent => :destroy
accepts_nested_attributes_for :user, :allow_destroy => true
validates_associated :user
end
:
Benim Hiyerarşi budur. Benim sorunum, boş bir form ile Müşteri (veya Çalışan vb) oluşturmaya çalışırsam, almam gereken tüm doğrulama hatalarını almamın yanı sıra "Kullanıcı geçersiz" ve "Müşteri geçersiz" gibi bazı Jenerik olanları alırsam, orada iç içe Kullanıcı modelinde en az biri geçersiz bir alandır, ekstra mesaj hataların listesine eklenir "X geçersiz" yana
user.login can't be blank
User is invalid
customer.whatever is blah blah blah...etc
customer.some_other_error etc etc
: hatalar gibi bir şey olsun. Bu, müvekkilim için kafa karıştırıcı oluyor ve bu yüzden hataları kendim yapmak yerine, bunu yapmak için hızlı bir yol olup olmadığını merak ediyorum.
Ayrıca, bir özellik isteğini daha iyi bir çözüm olarak önerdikten sonra bu çalışma: https://rails.lighthouseapp.com/projects/8994-ruby-on-rails/tickets/5632-validates_associated-should-be-allowed -de-değil-bir-oluşturmak-bir-hata # bilet-5632-2 – DJTripleThreat
Ben hata "Sembolün Dize içine örtülü bir dönüşüm yok" – Chemist
@Chemist alıyorum bu rayların eski bir sürümü için çalışıyordu. Sağladığınız kodu, kullanmayı düşündüğünüz sürümle düzgün bir şekilde çalışacak şekilde düzenlemeyi deneyin. – DJTripleThreat