我有两个表Role和User,我将这两个表与has_and_belongs_to_many关系与rails相关联。
我已成功将数据插入到由has_and_belongs_to_many关系创建的第三个表中。使用以下代码
def create
user_params[:password] = User.hash(user_params[:password])
@user = User.new(:first_name => user_params[:first_name],
:last_name=>user_params[:last_name],
:email => user_params[:email],
:contact_number=>user_params[:contact_number],
:password=>user_params[:password])
@roles = user_params[:roles];
for role in @roles
@user.roles << Role.find(role)
end
if @user.save
respond_to do |format|
msg = { :status => "ok", :message => "User Creation Success!" }
format.json { render :json => msg }
end
end
end
现在我的问题是如何读取关系表中的值以及如何更新关系表中的任何值。
答案 0 :(得分:0)
让我们假设您设置模型用户角色如下:
class User < ActiveRecord::Base
has_and_belongs_to_many :roles
end
class Role < ActiveRecord::Base
has_and_belongs_to_many :users
end
Abd添加了users_roles_table
表
然后,您可以检索相关数据,如正常说法
User.first.roles
和
Role.first.users