القضبان وصحة الطراز
-
19-09-2019 - |
سؤال
أريد أن أضع بعض صحة مستوى الطراز على الجدول التالي:
create_table :audios do |t|
t.integer :library_id, :null => false
t.string :file, :null => false, :limit => 2048
t.string :name, :limit => 512
t.timestamps
end
هل هذا يعني أن النموذج الخاص بي، الذي (حتى الآن) يشبه:
class Audio < ActiveRecord::Base
belongs_to :library
end
لديها
class Audio < ActiveRecord::Base
validates_presence_of :library
...
أو
class Audio < ActiveRecord::Base
validates_presence_of :library_id
...
?
المحلول
للتحقق من صحة وجود جمعية، استخدم اسمها، بدون _id
إلحاق
validates_presence_of :library
سوف تحقق من صحة شيئين:
library_id
حاضر- أ
Library
مع معينid
موجود
استخدام validates_presence_of :library_id
سوف تعطيك فقط التحقق الأول من الاثنين.
بالإضافة إلى هذا، النسخة دون _id
ستقوم أيضا بالتحقق بشكل صحيح إذا كانت كلا السجلات جديدة (وبالتالي library_id
لا يزال إلخيا).
لا تنتمي إلى StackOverflow