更改设计视图和控制器的默认加载路径

时间:2013-12-09 17:52:40

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

这是我的宝石文件gem 'devise', '1.5.2' 这是我的routes.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建议的宝石?** 捆绑安装是否已经改变了???将来如何防止这种情况?

1 个答案:

答案 0 :(得分: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>"}