0

現在、devise には URL がありますが、/users/sign_inこれを に変更したいと思います/signin

routes.rbファイルで、私はこれを試しました:

devise_for :users do
    get "/signin" => "devise/sessions#new"
    match '/signin', :to => 'devise/sessions#new'
    get "/signout" => "devise/sessions#destroy"
    match '/signout', :to => 'devise/sessions#destroy'   
end

しかし、何も機能していません。次のようなエラーが表示されます。

app/controllers/posts_controller.rb:19:in `show'

showセクションでは、私は持っています

def show
  @post = Post.find(params[:id])

  respond_to do |format|
    format.html # show.html.erb
    format.json { render json: @post }
  end
end

showコントローラーの何がdeviseと関係がありますか?

4

1 に答える 1

0

これを試してください:

 devise_scope :user do
   get   "/signin"  => "devise/sessions#new"
   match '/signin'  => 'devise/sessions#new'
   get   "/signout" => "devise/sessions#destroy"
   match '/signout' => 'devise/sessions#destroy' 
 end

ソース: https://github.com/plataformatec/devise/wiki/How-To:-Change-the-default-sign_in-and-sign_out-routes

于 2012-11-27T01:55:44.503 に答える