提问人:Surya 提问时间:6/2/2023 更新时间:6/2/2023 访问量:16
使用 devise invitable gem 时出现路由错误
Routing error when using devise invitable gem
问:
获取 No route matches [GET] “/users/invitation/new” 错误,即使它是 /invitation/new new_user_invitation_path在路线列表下说明。
使用 Gem Devise Invitable 并将此视频用作参考:https://youtu.be/5HMWE8g6_tc
试:
rails generate devise_invitable:install
rails db:migrate
rails generate devise_invitable:views
invitations_controller.rb
# app/controllers/users/invitations_controller.rb
class Users::InvitationsController < Devise::InvitationsController
before_action :configure_permitted_parameters, if: :devise_controller?
# GET /users/invitation/new
def new
super
end
# POST /users/invitation
def create
super
end
# GET /users/invitation/accept?invitation_token=abcdef
def edit
# Add any additional logic you need before rendering the invitation acceptance form
super
end
# PUT /users/invitation
def update
# Add any additional logic you need after accepting the invitation
super
end
private
def configure_permitted_parameters
devise_parameter_sanitizer.permit(:accept_invitation, keys: [:name, :other_attributes])
end
end
路线.rb
Rails.application.routes.draw do
# ...
devise_for :users, controllers: { invitations: 'users/invitations' }
# ...
end
答: 暂无答案
评论
config/routes.rb
devise_for
config/routes.rb