Valider qu'un objet est associé à une ou plusieurs objets

J'ai besoin de s'assurer que lorsqu'un produit est créé, il a au moins une catégorie.
Je pourrais le faire avec une validation personnalisée de la classe, mais j'espérais qu'il y a une norme plus moyen de le faire.

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