如何在Rails中更改资源的路径帮助程序名称

时间:2018-04-04 15:07:10

标签: ruby-on-rails routes

我的路由中有一个会话资源,用于验证用户(登录):

resource :session,
         only: %i[new create destroy]

我希望将路径助手命名为login_path(对于session#new和sessions #create)和logout_path(对于sessions#destroy),并将实际URL命名为' / login',' /退出'

我尝试为这些操作指定path_names,但这只会更改实际的url,而不是帮助程序名称。

我有一个有效的解决方案,但它并不完全是干的

scope controller: :sessions do
  get 'login', action: :new, as: 'login'
  post 'login', action: :create
  delete 'logout', action: :destroy, as: 'logout'
end

是否有漂亮的'这样做的方法?

1 个答案:

答案 0 :(得分:0)

怎么样?

get '/login', to: 'sessions#new' post '/login', to: 'sessions#create' post '/logout', to: 'sessions#destroy'