Ruby on rails 创建studio组时,如何将所有者作为成员添加到studio组中?
现在,每当我创建工作室时,当前用户都会成为工作室的所有者,但他不会成为工作室的成员。这样做的方式是什么 控制器:Ruby on rails 创建studio组时,如何将所有者作为成员添加到studio组中?,ruby-on-rails,ruby,ruby-on-rails-4,Ruby On Rails,Ruby,Ruby On Rails 4,现在,每当我创建工作室时,当前用户都会成为工作室的所有者,但他不会成为工作室的成员。这样做的方式是什么 控制器: class StudiosController < ApplicationController def create @studio = Studio.new(studio_params) @studio.owner = current_user respond_to do |format| if @studio.save
class StudiosController < ApplicationController
def create
@studio = Studio.new(studio_params)
@studio.owner = current_user
respond_to do |format|
if @studio.save
format.html { redirect_to @studio, notice: 'Studio was successfully created.' }
end
end
end
def members
@members = studio.memberships
@membership = Membership.new
end
end
class MembershipsController < ApplicationController
def create
@membership = studio.memberships.create membership_params
redirect_to members_studio_path(@studio)
end
end
在使当前用户成为所有者后,立即将其添加到
用户
关联中:
def create
@studio = Studio.new(studio_params)
@studio.owner = current_user
@studio.users << current_user
...
end
有很多:成员,类名:'User',通过::memberships
resources :studios do
member do
get :members
end
resources :memberships, only: [:create, :update, :destroy]
end
def create
@studio = Studio.new(studio_params)
@studio.owner = current_user
@studio.users << current_user
...
end
has_many :members, through: :memberships, source: :user