【问题标题】:Ruby on Rails' gem "Devise" doesn't even have a controller file in app/controllers?Ruby on Rails 的 gem "Devise" 甚至在 app/controllers 中都没有控制器文件?
【发布时间】:2010-11-07 12:56:00
【问题描述】:

安装Devise后,有路由到

/users/sign_in
/users/sign_up
/users/sign_out

但是没有文件app/controllers/users_controller.rb?为什么这不需要控制器文件或者只是其他地方?

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 rubygems devise


    【解决方案1】:

    控制器文件位于 gem 中,您无需自己编写。大多数事情都可以通过配置来完成。更多具体细节请见https://github.com/plataformatec/devise#readme

    但是,您可以生成视图以便您自己覆盖它们:

    rails generate devise:views
    

    这会将文件放置在 app/views/devise 中,您可以针对 Devise 提供的所有表单等进行修改。

    【讨论】:

      【解决方案2】:

      它与宝石捆绑在一起。您可以通过进一步的操作单独生成控制器“用户”:

      class UserController < ApplicationController
        def show
          @user = current_user
        end
      end
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多