Rails中未初始化的控制器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Rails中未初始化的控制器相关的知识,希望对你有一定的参考价值。
我对rails很陌生,而且我在某个方面,我很高兴能得到一些帮助。我的应用程序找不到它应该的控制器(错误消息:Uninistialized Controller)
我有以下路线
get 'order/shipped/:id', to: 'orderstats#shipped', as: :order_shipped
get 'order/paid/:id', to: 'orderstats#paid', as: :order_paid
get 'order/status/:id/open', to: 'orderstats#shipping_status_open!', as: :status_change_open
get 'order/status/:id/complete', to: 'orderstats#shipping_status_complete!', as: :status_change_complete
此外,我在app / controllers文件夹中创建了名为order_stats_controller.rb
的以下Controller
class OrderStatsController < ApplicationController
...
end
但每次运行应用程序时,我都会收到以下消息:uninitialized constant OrderstatsController
。我错过了什么?
更改为:'OrderStatus#shipped'不起作用。在启动Rails时,我将收到消息:
... /。rvm / gems / ruby-2.3.1 / gems / actionpack-5.0.0.1 / lib / action_dispatch / routing / mapper.rb:313:在check_controller_and_action中的`block(2个级别)':'OrderStats'是不是受支持的控制器名称。这可能导致潜在的路由问题。见http://guides.rubyonrails.org/routing.html#specifying-a-controller-to-use(ArgumentError)
你的控制器名称应该是路由中的order_stats
(文件名)
get 'order/shipped/:id', to: 'order_stats#shipped', as: :order_shipped
get 'order/paid/:id', to: 'order_stats#paid', as: :order_paid
get 'order/status/:id/open', to: 'order_stats#shipping_status_open!', as: :status_change_open
get 'order/status/:id/complete', to: 'order_stats#shipping_status_complete!', as: :status_change_complete
以上是关于Rails中未初始化的控制器的主要内容,如果未能解决你的问题,请参考以下文章
Rails 5 API 控制器中未定义的实例方法“respond_to”
getSupportFragmentManager() 在活动扩展片段中未定义