我有一个连接两个表之间的连接表。它有2列:user_id和course_id。表的名称是:course_sub_managers。该表没有索引。那么,如何删除满足course_id =某个变量的条件的所有行?至于现在我用:
sql = "DELETE FROM course_sub_managers WHERE course_id = " + @course.id.to_s
ActiveRecord::Base.connection.execute(sql)
是否有Rails方式来编写它?
答案 0 :(得分:1)
我怀疑你有一个课程模型,你写了类似的东西:
has_many :course_sub_managers
has_many :users, through => :course_sub_managers
在这种情况下,您可以使用:
@course.course_sub_managers.delete_all
答案 1 :(得分:0)
听起来你只想处理课程的删除?使用:dependent => :破坏你的人际关系。
has_many :course_sub_managers, :dependent => :destroy
当您销毁课程时,它会自动删除相关的表项。