Ruby on rails 未找到轨道设计Gem路径
以前我的设计模型可以工作,但现在所有的路线都失败了。我有两个模型:用户和管理员。每一个都有普通、:firstname、:lastname等的附加属性,并且每个都有单独的控制器,这些控制器与设备注册控制器的扩展名相同。这一切都始于我开始添加引导。 例如,当我尝试注销时,会出现以下错误: 没有与[GET]“/users/sign\u”匹配的路由 Rails.root:/Users/elizabeth/Desktop/ecoCalculator 我不确定是什么原因导致它认为注销是一种[获取] 当我尝试输入/admins/sign\u时,我得到: Desive::Sessions中的ActionController::UrlGenerationError#新建 显示/Users/elizabethzweizig/Desktop/ecoCalculator/app/views/layouts/application.html.erb,其中第61行出现: 没有路由匹配{:action=>“index”,:controller=>“designe/posts”} 这是指引导导航栏的一部分,但POST未链接到Desive。帖子不属于用户或管理员 下面是我的扩展注册控制器的示例Ruby on rails 未找到轨道设计Gem路径,ruby-on-rails,twitter-bootstrap,devise,routes,Ruby On Rails,Twitter Bootstrap,Devise,Routes,以前我的设计模型可以工作,但现在所有的路线都失败了。我有两个模型:用户和管理员。每一个都有普通、:firstname、:lastname等的附加属性,并且每个都有单独的控制器,这些控制器与设备注册控制器的扩展名相同。这一切都始于我开始添加引导。 例如,当我尝试注销时,会出现以下错误: 没有与[GET]“/users/sign\u”匹配的路由 Rails.root:/Users/elizabeth/Desktop/ecoCalculator 我不确定是什么原因导致它认为注销是一种[获取] 当我尝试
class AdminRegistrationsController < Devise::RegistrationsController
private
def sign_up_params
params.require(:user).permit(:first_name, :last_name, :username, :hometown, :email, :password, :password_confirmation)
end
def account_update_params
params.require(:user).permit(:first_name, :last_name, :username, :hometown, :email, :password, :password_confirmation, :current_password)
end
end
途中
devise_for :admins, :controllers => { admin_registrations: 'admin registrations' }
它将管理/注册
而不是管理注册
,更改此设置并查看发生了什么
看看格式
devise_for :users, :controllers => { registrations: 'users/registrations' } do
resources :waterusage
end
devise_for :admins, :controllers => { registrations: 'admins/registrations' }
并检查app/assets/javascripts/application.js
前两行
//= require jquery
//= require jquery_ujs
如果存在
require rails ujs
remove this我解决了这个问题,我最终对我的上一次提交进行了硬重置,以便更仔细地跟踪我的更改。它实际上与我的引导程序有关。当我编辑application.html.erb文件时,我已经移动了
<%= csrf_meta_tags %>
<%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
一旦我把它添加回项目中。这个装置又起作用了 重新启动服务器我想问题出在其他地方,比如其他路径,路径名称拼写错误,比如
new\u post\u path
或者其他什么地方,你能检查路由
比如运行rake路由
,查看路径并比较你的用法你为这两种型号都生成了Desive控制器吗?如果是这样,您应该有两个文件夹用户
和管理员
,其中包含不同的控制器:注册、会话、确认、密码。。是这样吗?
<%= csrf_meta_tags %>
<%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>