ユーザーを特定のプロジェクト/ワークスペース/チームに招待できるアプリを作成しています。ただし、デフォルトでは、特定のプロジェクトではなく、ユーザーをアプリに招待できます。この質問は非常に似ているようです特定のプロジェクトにユーザーを招待するために devise_invitable ルートをネストする方法この場合、invitations_controller をオーバーライドする方法を知っている人はいますか?
1 に答える
1
invite
内でアクションを作成しprojects_controller.rb
、ユーザーをプロジェクトに直接招待できます。
User
招待したProject
直後に、招待された人を に関連付けるだけです。これにどのようにアプローチできるかを示すスニペットを次に示します。
# POST /projects/:id/invite { name: "John Smith", email: "john@email.com" }
def invite
# Set the current project
@project = Project.find(param[:id])
# Create your own strong_invite_params method to allow name and email
invited_user = User.invite!(strong_invite_params, current_user)
# If a simple belongs_to :project association
invited_user.update(project: @project.id)
# If a complex association through a separate projects_membership table
invited_user.projects << @project
end
于 2016-01-06T06:16:28.233 に答える