如何在不删除项目本身的情况下移除HABTM相关项目? 例如,假设我有三个同学在科学课上。 如何删除StudentsClasses表中的科学对象而不删除实际的科学参考? 我猜, Student.Classes.first.delete不是一个好主意。 我使用JavaScript进行拖放来添加和删除,而不是checkbox。 有什么想法吗?
我有两个模型restaurant和user ,我想执行一个has_and_belongs_to_many关系。 我已经进入模型文件,并添加了has_and_belongs_to_many :restaurants和has_and_belongs_to_many :users 我认为在这一点上,我应该能够像Rails 3一样做: rails generate migration …. 但是我所尝试的一切似乎都失败了。 我敢肯定,这是非常简单的东西我是新来的铁轨,所以我仍然在学习。
鉴于以下 class User < ActiveRecord::Base has_and_belongs_to_many :companies end class Company < ActiveRecord::Base has_and_belongs_to_many :users end 如何为企业和用户定义包括双向关联的工厂? 这是我的尝试 Factory.define :company do |f| f.users{ |users| [users.association :company]} end Factory.define :user do |f| f.companies{ |companies| [companies.association :user]} end 现在我试试 Factory :user 也许毫不奇怪的是,当工厂recursion地使用彼此来定义自己时,这导致无限循环。 更令人惊讶的是,我还没有发现如何在任何地方做到这一点,有没有一种模式来定义必要的工厂,或者我正在做一些根本性的错误?