我以这种方式设置了关联。
class Program
has_many :program_activities, dependent: :destroy
has_many :recent_activities, through: :program_activities, source: :recent_activity
end
class RecentActivity
has_many :program_activities, dependent: :destroy
end
我想删除与程序对象关联的recent_activities。
program.recent_activities.destroy_all
但是上面的查询实际上只是删除(请注意删除而不是破坏)program_activities 并单独留下recent_activities 对象。
我通过检查 rails 控制台查询发现了这一点,destroy_all 方法是否有问题,或者我实际上是否错误地设置了关联。