Я использую разработать и я хочу, чтобы настроить его URLs:Невозможно переписана разработать маршруты
users/sign_in --> account/login
users/sign_up --> account/register
users/edit --> account/profile
...
Теперь мой routes.rb
выглядит следующим образом:
devise_scope :user do
get '/account/login' => 'devise/sessions#new'
post 'account/login' => 'devise/sessions#create', as: :user_session
delete 'account/logout' => 'devise/sessions#destroy', as: :destroy_user_session
post 'account/password' => 'devise/passwords#update', as: :user_password
get 'account/password/forgot' => 'devise/passwords#new', as: :new_user_password
get 'account/password/edit' => 'devise/passwords#edit', as: :edit_user_password
put 'account/password' => 'devise/passwords#update'
get 'account/cancel' => 'devise/registrations#cancel', as: :cancel_user_registration
post 'account' => 'devise/registrations#create', as: :user_registration
get 'account/register' => 'devise/registrations#new', as: :new_user_registration
get 'account' => 'devise/registrations#edit', as: :edit_user_registration
put 'account' => 'devise/registrations#edit'
delete 'account' => 'devise/registrations#destroy'
end
devise_for :users
мне удается переписана profile, forgot, register
ошибка не login
:
Поэтому, когда я нажимаю на ссылку «Зарегистрироваться» ссылка в общем объявлении Devise форма Я перенаправлен на /register
в браузере, но когда я нажимаю «Войти» link Я по-прежнему перенаправляется на /users/sign_in
, а не login
.
Я пробовал match
против post + get
для маршрутов, но без везения. Я знаю, что если я сам сгенерирую формы, я могу решить, как выглядят ссылки, но я бы предпочел пользователям общие формы разработки, а также мне любопытно, почему работают другие маршруты.
rake routes
Запуск производит это (с верхними пятью рядами из моих маршрутов):
new_user_session GET /account/login(.:format) devise/sessions#new
user_session POST /account/login(.:format) devise/sessions#create
destroy_user_session DELETE /account/logout(.:format) devise/sessions#destroy
user_password POST /account/password(.:format) devise/passwords#update
new_user_password GET /account/password/forgot(.:format) devise/passwords#new
edit_user_password GET /account/password/edit(.:format) devise/passwords#edit
account_password PUT /account/password(.:format) devise/passwords#update
cancel_user_registration GET /account/cancel(.:format) devise/registrations#cancel
user_registration POST /account(.:format) devise/registrations#create
new_user_registration GET /account/register(.:format) devise/registrations#new
edit_user_registration GET /account(.:format) devise/registrations#edit
account PUT /account(.:format) devise/registrations#edit
DELETE /account(.:format) devise/registrations#destroy
new_user_session GET /users/sign_in(.:format) devise/sessions#new
POST /users/sign_in(.:format) devise/sessions#create
destroy_user_session DELETE /users/sign_out(.:format) devise/sessions#destroy
POST /users/password(.:format) devise/passwords#create
GET /users/password/new(.:format) devise/passwords#new
GET /users/password/edit(.:format) devise/passwords#edit
PUT /users/password(.:format) devise/passwords#update
GET /users/cancel(.:format) devise/registrations#cancel
POST /users(.:format) devise/registrations#create
GET /users/sign_up(.:format) devise/registrations#new
GET /users/edit(.:format) devise/registrations#edit
PUT /users(.:format) devise/registrations#update
DELETE /users(.:format) devise/registrations#destroy
root / posts#show
Update: Я сейчас имитируя все маршруты DEViSE (СМ обновленный routes.rb). Но я до сих пор перенаправлены /users/sign_in
Хорошо, это намного лучше, чем пытаться переписать маршруты – Besi