这个问题问了一个类似的问题:Rails: Has and belongs to many (HABTM) -- 创建关联而不创建其他记录,但我是 Rails 新手并将其应用于我的问题。
我可以Location
轻松地在“用户”和“位置”之间创建一个新的关联:
@location = Location.new(params[:location].merge(:user_ids => current_user.id))
我怎样才能改变这个:
- 如果不存在,则创建一个新的
Location
和关联Location
Location
如果已经存在,则创建一个新关联
?
我的模型是这样的:
Location
:
class Location < ActiveRecord::Base
attr_accessible :name, :user_ids
has_and_belongs_to_many :users
end
User
:
class User < ActiveRecord::Base
attr_accessible :email, :password, :password_confirmation, :remember_me
has_and_belongs_to_many :locations
end
所以我想知道如何只创建一个关联以及如何检查我是否应该只创建一个关联。
我的关联表只有location_id
一个user_id
字段。
非常感谢。