【问题标题】:change default load path for devise views and controller更改设计视图和控制器的默认加载路径
【发布时间】:2023-04-08 00:55:02
【问题描述】:

这是我的 gem 文件 gem 'devise', '1.5.2' 这是我的路线。rb devise_for :users 这是我学到的: 最初控制器,视图从 vender/gems/1.91/ruby/devise 1.5.2 加载 所以我添加的内容将应用程序结构修改为 app/controllers/devise/(并从vender/gems/1.91/ruby/devise 1.5.2/app/controllers 复制了所有控制器)并对视图执行相同操作,因为每次视图都是从供应商加载的,所以当我添加设计文件夹时,它是从app/views/users/ 而不是供应商加载的。 但是刚才我做了捆绑安装,一切都一样了,从供应商那里加载……我不明白为什么捆绑安装会改变这个。 所以我需要做哪些更改,以便下次我的更改不会丢失。 我只想从 myapp/app/controllers 和 myapp/app/views* 加载 *设计视图/控制器,而不是从 vendor/bundle/gems/ 1.91/ruby/gems/devise 1.5.2 我在哪里为我的 app.pls 加载 gems 建议??** 捆绑安装是否改变了一切???以后如何防止这种情况发生?

【问题讨论】:

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


    【解决方案1】:

    都是Here

    不要手动复制,使用生成器

    rails generate devise:views
    

    所有需要的视图都会在 app/views/devise 下生成

    至于控制器,在app/controllers下创建

    class RegistrationsController < Devise::RegistrationsController
    
    end
    

    class SessionsController < Devise::SessionsController
    
    end
    

    并更改routes.rb 以指向它们:

    devise_for :admins, :controllers => { :sessions => "<YOUR_SESSION_CONTROLLER>", :registrations =>  "<YOUR_REGISTRATION_CONTROLLER>"}
    

    【讨论】:

    • 感谢@Raichel....我得到了工作...希望现在当我进行捆绑安装...它不会改变我的设置...
    猜你喜欢
    • 1970-01-01
    • 2011-05-17
    • 1970-01-01
    • 1970-01-01
    • 2011-06-20
    • 1970-01-01
    • 2013-06-15
    • 2021-10-25
    • 1970-01-01
    相关资源
    最近更新 更多