制定路由错误 [英] devise routing error

查看:189
本文介绍了制定路由错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我似乎无法设置器件时让过去这个错误。

 路由错误错误的常量名设计/ registrationsController

 路由错误错误的常量名设计/ sessionsController

我使用Ruby 1.8.7,Rails的3.0和1.1.3制定

一切都在我的应用程序的作品一样,我最近从2.3.8升级我的应用程序,是previously使用authlogic但没有自己比其他任何用户,所以我只是抛弃我的用户,会话模式和用户,UserSession控制器......所以我盘算,有事做它,因为我做了一个新的Rails 3应用测试设计我的配置和路由工作完美。

任何想法?

在除

  devise_for:用户

我也试过:

  devise_scope:用户做
  获得注册=> 色器件/注册#新的
  得到登录=> 色器件/会话#新的
  得到注销=> 色器件/会话#消灭
结束

下面是我的完整跟踪

 入门掌握在周五10月1日12时11分59秒+0200 2010/用户/ sign_in为127.0.0.1ActionController的:: RoutingError(错误常量名设计/ sessionsController):
  的ActiveSupport(3.0.0)的lib / active_support /偏转/ methods.rb:113:在`const_defined
  的ActiveSupport(3.0.0)的lib / active_support /偏转/ methods.rb:113:在`constantize
  的ActiveSupport(3.0.0)的lib / active_support /偏转/ methods.rb:112:在每个`
  的ActiveSupport(3.0.0)的lib / active_support /偏转/ methods.rb:112:在`constantize
  的ActiveSupport(3.0.0)的lib / active_support / dependencies.rb:523
  的ActiveSupport(3.0.0)的lib / active_support / dependencies.rb:533:在`呼叫'
  的ActiveSupport(3.0.0)的lib / active_support / dependencies.rb:533:在默认情况下`
  的ActiveSupport(3.0.0)的lib / active_support / dependencies.rb:533:在`[]'
  的ActiveSupport(3.0.0)的lib / active_support / dependencies.rb:533:在'得到'
  ActionPack的(3.0.0)的lib / action_dispatch /路由/ route_set.rb:58:在`controller_reference
  ActionPack的(3.0.0)的lib / action_dispatch /路由/ route_set.rb:44:在'控制'
  ActionPack的(3.0.0)的lib / action_dispatch /路由/ route_set.rb:23:在'叫'
  ActionPack的(3.0.0)的lib / action_dispatch /路由/ mapper.rb:34:在'叫'
  机架式(0.6.13)的lib /架/安装/ route_set.rb:148:在`呼叫'
  机架式(0.6.13)的lib /架/安装/ code_generation.rb:93:在'承认'
  机架式(0.6.13)的lib /架/安装/ code_generation.rb:68:在`optimized_each
  机架式(0.6.13)的lib /架/安装/ code_generation.rb:92:在'承认'
  机架式(0.6.13)的lib /架/安装/ route_set.rb:139:在`呼叫'
  ActionPack的(3.0.0)的lib / action_dispatch /路由/ route_set.rb:492:在`叫'
  舍监(0.10.7)的lib /监狱长/ manager.rb:35:在`呼叫'
  舍监(0.10.7)的lib /监狱长/ manager.rb:34:在'抓'
  舍监(0.10.7)的lib /监狱长/ manager.rb:34:在`呼叫'
  ActionPack的(3.0.0)的lib / action_dispatch /中间件/ best_standards_support.rb:17:在`呼叫'
  ActionPack的(3.0.0)的lib / action_dispatch /中间件/ head.rb:14:`呼叫'
  机架(1.2.1)的lib /架/ methodoverride.rb:24:在'叫'
  ActionPack的(3.0.0)的lib / action_dispatch /中间件/ params_parser.rb:21:在`呼叫'
  ActionPack的(3.0.0)的lib / action_dispatch /中间件/ flash.rb:182:在`呼叫'
  ActionPack的(3.0.0)的lib / action_dispatch /中间件/会话/ abstract_store.rb:149:在`呼叫'
  ActionPack的(3.0.0)的lib / action_dispatch /中间件/ cookies.rb:287:在`呼叫'
  ActiveRecord的(3.0.0)的lib / active_record / query_cache.rb:32:在`呼叫'
  ActiveRecord的(3.0.0)的lib / active_record / connection_adapters /抽象/ query_cache.rb:28:在`缓存
  ActiveRecord的(3.0.0)的lib / active_record / query_cache.rb:12:`缓存
  ActiveRecord的(3.0.0)的lib / active_record / query_cache.rb:31:在`呼叫'
  ActiveRecord的(3.0.0)的lib / active_record / connection_adapters /抽象/ connection_pool.rb:355:在`叫'
  ActionPack的(3.0.0)的lib / action_dispatch /中间件/ callbacks.rb:46:在`呼叫'
  的ActiveSupport(3.0.0)的lib / active_support / callbacks.rb:415:在`_run_call_callbacks
  ActionPack的(3.0.0)的lib / action_dispatch /中间件/ callbacks.rb:44:在`呼叫'
  机架(1.2.1)的lib /架/ sendfile.rb:107:在`叫'
  ActionPack的(3.0.0)的lib / action_dispatch /中间件/ remote_ip.rb:48:在`呼叫'
  ActionPack的(3.0.0)的lib / action_dispatch /中间件/ show_exceptions.rb:46:在`呼叫'
  railties(3.0.0)的lib /导轨/架/ logger.rb:13:'叫'
  机架(1.2.1)的lib /架/ runtime.rb:17:在'叫'
  的ActiveSupport(3.0.0)的lib / active_support /缓存/策略/ local_cache.rb:72:在`呼叫'
  机架(1.2.1)的lib /架/ lock.rb:11:'叫'
  机架(1.2.1)的lib /架/ lock.rb:11:'同步'
  机架(1.2.1)的lib /架/ lock.rb:11:'叫'
  ActionPack的(3.0.0)的lib / action_dispatch /中间件/ static.rb:30:在`呼叫'
  railties(3.0.0)的lib /导轨/ application.rb中:168:在`叫'
  railties(3.0.0)的lib /导轨/ application.rb中:77:在'送'
  railties(3.0.0)的lib /导轨/ application.rb中:77:在`method_missing的
  railties(3.0.0)的lib /导轨/架/ log_tailer.rb:14:'叫'
  机架(1.2.1)的lib /架/ content_length.rb:13:'叫'
  机架(1.2.1)的lib /架/ chunked.rb:15:在'叫'
  薄(1.2.7)的lib /超薄/ connection.rb:76:在`pre_process
  薄(1.2.7)的lib /超薄/ connection.rb:74:在'抓'
  薄(1.2.7)的lib /超薄/ connection.rb:74:在`pre_process
  薄(1.2.7)的lib /超薄/ connection.rb:57:在'过程'
  薄(1.2.7)的lib /超薄/ connection.rb:42:在`receive_data
  EventMachine的(0.12.10)的lib / eventmachine.rb:256:在`run_machine
  EventMachine的(0.12.10)的lib / eventmachine.rb:256:在`跑
  薄(1.2.7)的lib /超薄/后端/ base.rb:57:在`开始'
  薄(1.2.7)的lib /超薄/ server.rb:156:在`开始'
  机架(1.2.1)的lib /架/处理器/ thin.rb:14:'运行'
  机架(1.2.1)的lib /架/ server.rb:213:在`开始'
  railties(3.0.0)的lib /导轨/命令/ server.rb:65:在`开始'
  railties(3.0.0)的lib /导轨/ commands.rb:30
  railties(3.0.0)的lib /导轨/ commands.rb:27:在`水龙头
  railties(3.0.0)的lib /导轨/ commands.rb:27
  脚本/导轨:6:'需要'
  脚本/导轨:6

完整的routes.rb

  Travelapp :: Application.routes.draw做  devise_for:用户  比赛的探究/:身份证'=> 查询#新,:如=> :查询
  匹配文档/:永久'=> 文档#秀,:如=> :文档
  匹配'接触'=> 反馈#新,:如=> :联系
  #match注册/:身份证'=> 性能#新,:如=> :寄存器  资源:管理办
    资源:房间
    资源:room_rates
    资源:可获取
    资源:manage_bookings
  结束  资源:反馈
  资源:邀请函
  资源:航班  匹配关于=> 网页#关于':为= GT; :关于
  匹配'接触'=> 网页#接触',:如=> :联系
  匹配'功能'=> 网页#特性',:如=> :特征
  匹配'比较'=> 网页#比较':为= GT; :比较  资源:做徽章
    做收藏
      岗位:排序
    结束
  结束  资源:做公告
    做收藏
      岗位:驳回
    结束
  结束  匹配'确认'=> 确认#索引,:如=> :确认
  匹配'确认/:confirmation_token'=> 确认#新,:如=> :确认
  匹配'旅馆/:ID / preVIEW'=> 订单#preVIEW':为= GT; :preVIEW  资源:查询
  资源:性能
  资源:推荐
  资源:反馈
  资源:可获取
  资源:货币做
    做收藏
      岗位:update_cu​​rrency
    结束
  结束  资源:目的地
  资源:国家
  资源:确认
  资源:搜索  资源:位置做
    做收藏
      得到:自动完成
      岗位:排序
    结束
  结束  资源:做宿舍
    做收藏
      岗位:update_cu​​rrency
      岗位:update_availables
      得到:update_search
    结束
    资源:预订
    资源:照片做
      做收藏
        岗位:排序
      结束
    结束    资源:评论
  结束  资源:做预订
    资源:回顾
  结束  根:以= GT; 搜索#指数  哑剧:: Type.register应用程序/ vnd.google-earth.kml + XML,:KML
结束


解决方案

问题是相互矛盾的字符串#camelize方法我用鼠标右键AWS另一颗宝石。

现在禁用它和它的作品。同时还发现:

http://groups.google.com/group/plataformatec-devise/browse_thread/thread/d726823ce778597f

I can't seem to get past this error when setting up devise.

Routing Error

wrong constant name Devise/registrationsController

or

Routing Error

wrong constant name Devise/sessionsController

I'm using Ruby 1.8.7, Rails 3.0 and Devise 1.1.3

Everything else on my app works, I recently upgraded my app from 2.3.8 and was previously using authlogic but didn't have any users other than myself so I just jettisoned my User, Session models and User, UserSession controllers... so I'm figuring that has something do to with it because I made a new Rails 3 app to test devise on my configuration and the routing working perfectly.

Any ideas?

In addition to:

devise_for :users

I also tried:

devise_scope :user do
  get "register"  => "devise/registrations#new" 
  get "login"  => "devise/sessions#new"    
  get "logout" => "devise/sessions#destroy"
end 

Here's my complete trace

Started GET "/users/sign_in" for 127.0.0.1 at Fri Oct 01 12:11:59 +0200 2010

ActionController::RoutingError (wrong constant name Devise/sessionsController):
  activesupport (3.0.0) lib/active_support/inflector/methods.rb:113:in `const_defined?'
  activesupport (3.0.0) lib/active_support/inflector/methods.rb:113:in `constantize'
  activesupport (3.0.0) lib/active_support/inflector/methods.rb:112:in `each'
  activesupport (3.0.0) lib/active_support/inflector/methods.rb:112:in `constantize'
  activesupport (3.0.0) lib/active_support/dependencies.rb:523
  activesupport (3.0.0) lib/active_support/dependencies.rb:533:in `call'
  activesupport (3.0.0) lib/active_support/dependencies.rb:533:in `default'
  activesupport (3.0.0) lib/active_support/dependencies.rb:533:in `[]'
  activesupport (3.0.0) lib/active_support/dependencies.rb:533:in `get'
  actionpack (3.0.0) lib/action_dispatch/routing/route_set.rb:58:in `controller_reference'
  actionpack (3.0.0) lib/action_dispatch/routing/route_set.rb:44:in `controller'
  actionpack (3.0.0) lib/action_dispatch/routing/route_set.rb:23:in `call'
  actionpack (3.0.0) lib/action_dispatch/routing/mapper.rb:34:in `call'
  rack-mount (0.6.13) lib/rack/mount/route_set.rb:148:in `call'
  rack-mount (0.6.13) lib/rack/mount/code_generation.rb:93:in `recognize'
  rack-mount (0.6.13) lib/rack/mount/code_generation.rb:68:in `optimized_each'
  rack-mount (0.6.13) lib/rack/mount/code_generation.rb:92:in `recognize'
  rack-mount (0.6.13) lib/rack/mount/route_set.rb:139:in `call'
  actionpack (3.0.0) lib/action_dispatch/routing/route_set.rb:492:in `call'
  warden (0.10.7) lib/warden/manager.rb:35:in `call'
  warden (0.10.7) lib/warden/manager.rb:34:in `catch'
  warden (0.10.7) lib/warden/manager.rb:34:in `call'
  actionpack (3.0.0) lib/action_dispatch/middleware/best_standards_support.rb:17:in `call'
  actionpack (3.0.0) lib/action_dispatch/middleware/head.rb:14:in `call'
  rack (1.2.1) lib/rack/methodoverride.rb:24:in `call'
  actionpack (3.0.0) lib/action_dispatch/middleware/params_parser.rb:21:in `call'
  actionpack (3.0.0) lib/action_dispatch/middleware/flash.rb:182:in `call'
  actionpack (3.0.0) lib/action_dispatch/middleware/session/abstract_store.rb:149:in `call'
  actionpack (3.0.0) lib/action_dispatch/middleware/cookies.rb:287:in `call'
  activerecord (3.0.0) lib/active_record/query_cache.rb:32:in `call'
  activerecord (3.0.0) lib/active_record/connection_adapters/abstract/query_cache.rb:28:in `cache'
  activerecord (3.0.0) lib/active_record/query_cache.rb:12:in `cache'
  activerecord (3.0.0) lib/active_record/query_cache.rb:31:in `call'
  activerecord (3.0.0) lib/active_record/connection_adapters/abstract/connection_pool.rb:355:in `call'
  actionpack (3.0.0) lib/action_dispatch/middleware/callbacks.rb:46:in `call'
  activesupport (3.0.0) lib/active_support/callbacks.rb:415:in `_run_call_callbacks'
  actionpack (3.0.0) lib/action_dispatch/middleware/callbacks.rb:44:in `call'
  rack (1.2.1) lib/rack/sendfile.rb:107:in `call'
  actionpack (3.0.0) lib/action_dispatch/middleware/remote_ip.rb:48:in `call'
  actionpack (3.0.0) lib/action_dispatch/middleware/show_exceptions.rb:46:in `call'
  railties (3.0.0) lib/rails/rack/logger.rb:13:in `call'
  rack (1.2.1) lib/rack/runtime.rb:17:in `call'
  activesupport (3.0.0) lib/active_support/cache/strategy/local_cache.rb:72:in `call'
  rack (1.2.1) lib/rack/lock.rb:11:in `call'
  rack (1.2.1) lib/rack/lock.rb:11:in `synchronize'
  rack (1.2.1) lib/rack/lock.rb:11:in `call'
  actionpack (3.0.0) lib/action_dispatch/middleware/static.rb:30:in `call'
  railties (3.0.0) lib/rails/application.rb:168:in `call'
  railties (3.0.0) lib/rails/application.rb:77:in `send'
  railties (3.0.0) lib/rails/application.rb:77:in `method_missing'
  railties (3.0.0) lib/rails/rack/log_tailer.rb:14:in `call'
  rack (1.2.1) lib/rack/content_length.rb:13:in `call'
  rack (1.2.1) lib/rack/chunked.rb:15:in `call'
  thin (1.2.7) lib/thin/connection.rb:76:in `pre_process'
  thin (1.2.7) lib/thin/connection.rb:74:in `catch'
  thin (1.2.7) lib/thin/connection.rb:74:in `pre_process'
  thin (1.2.7) lib/thin/connection.rb:57:in `process'
  thin (1.2.7) lib/thin/connection.rb:42:in `receive_data'
  eventmachine (0.12.10) lib/eventmachine.rb:256:in `run_machine'
  eventmachine (0.12.10) lib/eventmachine.rb:256:in `run'
  thin (1.2.7) lib/thin/backends/base.rb:57:in `start'
  thin (1.2.7) lib/thin/server.rb:156:in `start'
  rack (1.2.1) lib/rack/handler/thin.rb:14:in `run'
  rack (1.2.1) lib/rack/server.rb:213:in `start'
  railties (3.0.0) lib/rails/commands/server.rb:65:in `start'
  railties (3.0.0) lib/rails/commands.rb:30
  railties (3.0.0) lib/rails/commands.rb:27:in `tap'
  railties (3.0.0) lib/rails/commands.rb:27
  script/rails:6:in `require'
  script/rails:6

Complete routes.rb

Travelapp::Application.routes.draw do

  devise_for :users

  match 'inquiry/:id' => 'inquires#new', :as => :inquiry
  match 'docs/:permalink' => 'docs#show', :as => :docs
  match 'contact' => 'feedbacks#new', :as => :contact
  #match 'register/:id' => 'properties#new', :as => :register

  resources :manage do
    resources :rooms
    resources :room_rates
    resources :availables
    resources :manage_bookings
  end

  resources :feedbacks
  resources :invitations
  resources :flights

  match 'about' => 'pages#about', :as => :about
  match 'contact' => 'pages#contact', :as => :contact
  match 'features' => 'pages#features', :as => :features
  match 'comparison' => 'pages#comparison', :as => :comparison

  resources :badges do
    collection do
      post :sort
    end
  end

  resources :announcements do
    collection do
      post :dismiss
    end
  end

  match 'confirmation' => 'confirmations#index', :as => :confirmation
  match 'confirmation/:confirmation_token' => 'confirmations#new', :as => :confirmation
  match 'hostels/:id/preview' => 'bookings#preview', :as => :preview

  resources :inquires
  resources :properties
  resources :testimonials
  resources :feedbacks
  resources :availables
  resources :currencies do
    collection do
      post :update_currency
    end
  end

  resources :destinations
  resources :countries
  resources :confirmations
  resources :searches

  resources :locations do
    collection do
      get :autocomplete
      post :sort
    end
  end

  resources :hostels do
    collection do
      post :update_currency
      post :update_availables
      get :update_search
    end
    resources :bookings
    resources :photos do
      collection do
        post :sort
      end
    end

    resources :reviews
  end

  resources :bookings do
    resource :review
  end

  root :to => "searches#index"

  Mime::Type.register 'application/vnd.google-earth.kml+xml', :kml


end

解决方案

The problem is conflicting String#camelize method in another gem I was using Right-AWS.

Disabled it for now and it works. Also found:

http://groups.google.com/group/plataformatec-devise/browse_thread/thread/d726823ce778597f

这篇关于制定路由错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆