创建新站点记录时,我无法更新 many_to_many 表。站点表已更新,但未更新站点用户。我希望在创建站点时将 user_id 和 site_id 添加到 sites_users 表中。
我的迁移:
class CreateTableSiteUser < ActiveRecord::Migration
def up
create_table :sites_users, :id => false do |t|
t.integer :site_id
t.integer :user_id
end
楷模:
用户.rb
class User < ActiveRecord::Base
attr_accessible :name, :email, :password, :password_confirmation, :user_id
has_secure_password
has_and_belongs_to_many :sites
网站.rb
class Site < ActiveRecord::Base
attr_accessible :name, :site_key, :organization_id, :user_id, :site_id
belongs_to :organization
has_and_belongs_to_many :users
站点控制器.rb
def create
@site = Site.new(params[:site])
@site.organization_id = Organization.where(:user_id => current_user.id)
@user_id = current_user.id
if @site.save
flash[:success] = "New Site Created!"
redirect_to root_path
else
我还需要什么来获取 site_id 和 user_id 以保存到 sites_users 连接表?
我已经尽可能多地阅读了多对多的内容,并且发布了许多主题,观看了 railscast 视频,并尽可能多地进行了搜索。任何帮助将不胜感激。
谢谢!