Ruby on rails 如何在删除前检查对象是否被引用?(多对多关系)
我在RubyonRails这个世界上还是个新手。我有两个类,A和B,定义如下:Ruby on rails 如何在删除前检查对象是否被引用?(多对多关系),ruby-on-rails,ruby,ruby-on-rails-3,activeadmin,Ruby On Rails,Ruby,Ruby On Rails 3,Activeadmin,我在RubyonRails这个世界上还是个新手。我有两个类,A和B,定义如下: class AClass < ActiveRecord::Base has_many :a_b_class end class ABClass < ActiveRecord::Base validates_presence_of :attr1, :attr2 belongs_to :a_class belongs_to :b_class attr_accessible :attr
class AClass < ActiveRecord::Base
has_many :a_b_class
end
class ABClass < ActiveRecord::Base
validates_presence_of :attr1, :attr2
belongs_to :a_class
belongs_to :b_class
attr_accessible :attr1,:attr2,:a_class, b_class
end
class BClass < ActiveRecord::Base
validates_presence_of :attr4, :attr5
has_many :a_b_class
attr_accessible :attr4,:attr5
end
类AClass编辑:我纠正了这种关系,是一种多对多的关系我认为你的关联在某个地方是错误的,首先纠正了这一点,例如文章有很多评论,所以评论有文章id,注释验证了:article\u id的存在,如果您删除了article,则应删除相应的注释,因为您需要“dependent=>:destroy”
类文章:销毁
结束
类注释我认为你的关联在某个地方是错误的,首先纠正,例如文章有很多注释,因此注释有文章id,注释有验证:文章id
不是文章的存在,如果你删除了文章,相应的注释应该被删除,因为你需要'dependent=>:destroy'
类文章:销毁
结束
class Comment我不确定这是否能解决问题-但是你能尝试向BClass添加一个属性来标记它属于AClass吗
belongs_to :a_class
还有,你不能这么做:
validates_presence_of :b_class_id
由于可能有许多ID..我不确定这是否能解决问题-但是您能否尝试向BClass添加一个“属于”属性以标记它属于AClass
belongs_to :a_class
还有,你不能这么做:
validates_presence_of :b_class_id
因为可能有很多ID