【问题标题】:rails 3 devise avoid access /sign_in pathrails 3 设计避免访问 /sign_in 路径
【发布时间】:2012-11-01 15:09:27
【问题描述】:

我使用 devise for rails 3.2 进行身份验证。我已将默认路由从设计更改为:

devise_scope :user do
    get 'signin' => 'devise/sessions#new', :as => :new_user_session
    post 'signin' => 'devise/sessions#create', :as => :user_session
    match 'signout' => 'devise/sessions#destroy', :as => :destroy_user_session,
          :via => Devise.mappings[:user].sign_out_via
  end

现在我的登录和注册表单位于根站点上。如何避免访问 127.0.0.1:3000/signin 但仅授予对 127.0.0.1:3000 的访问权限

【问题讨论】:

    标签: ruby-on-rails devise routes


    【解决方案1】:

    希望它无法访问?将其从路由中删除,因此用户无法访问它。

    【讨论】:

    • 当我删除它时,我会在 Authentication#welcome Showing /Volumes/Develop/login_app/app/views/authentication/welcome.html.erb 中收到类似 oMethodError 的错误消息,其中第 6 行出现: #<:routing::routesproxy:0x007ffb4d711a10> 的未定义方法 `user_session_path' 提取的源代码(第 6 行附近):
    • 你能把 devise 的 sigin 形式移动到一个部分并在主页上,渲染那个部分吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-21
    • 1970-01-01
    • 1970-01-01
    • 2011-06-29
    • 1970-01-01
    相关资源
    最近更新 更多