Bir ürün oluşturulduğunda en az bir kategori olduğundan emin olmalıyım. Bunu özel bir doğrulama sınıfı ile yapabilirdim, ancak bunu yapmanın daha standart bir yolu olduğunu umuyordum.Bir nesnenin bir veya daha fazla ilişkili nesneye sahip olduğunu doğrulayın
class Product < ActiveRecord::Base
has_many :product_categories
has_many :categories, :through => :product_categories #must have at least 1
end
class Category < ActiveRecord::Base
has_many :product_categories
has_many :products, :through => :product_categories
end
class ProductCategory < ActiveRecord::Base
belongs_to :product
belongs_to :category
end
1. ürünler + kategoriler, has_and_belongs_to_many' ile tanışmak için harika bir fırsattır http://api.rubyonrails.org/classes/ActiveRecor d/Birlikler/ClassMethods.html # yöntemi-i has_and_belongs_to_many. İlişkilendirmenin yanında ek öznitelikleri saklamak istemediğiniz sürece katılma modeline ihtiyacınız yoktur. 2. Bu sorudan en iyi cevabı kullanabilirsiniz http://stackoverflow.com/questions/6429389/how-can-i-make-sure-my-has-many-will-have-a-size-of-at- En az 2 ne değişeceğini tahmin et :) – jibiel