耙路线甚至失败时,应用程序加载
当我的应用程序目录中运行bundle exec rake routes
我碰到下面的错误。耙路线甚至失败时,应用程序加载
有关如何追踪此错误的任何建议?
编辑:这里是routes.rb中
namespace :api do
namespace :provider do
post 'authenticate'
namespace :customer do
get '/', :to => 'customer#index'
post '/', :to => 'customer#create'
get '/:id', :to => 'customer#show'
end
end
end
事实证明,我在安装rails时遇到了问题。将我的Gemfile更改回3.0.5 for rails(gem 'rails', '3.0.5'
)运行bundle update && bundle install
,然后将Rails gem重新设置为3.0.9(gem 'rails', '3.0.9'
),并运行bundle update && bundle install
再次解决了问题。
相关的部分我知道这听起来很滑稽,但你试过将其关闭并重新打开..字面上。我使用aptana studio 3作为我的导轨,我偶然遇到了工作室“忘记”所有内容的奇怪时刻,有一次它甚至忘记了这个bash。关闭它并再次打开IDE或卸载它并重新安装。希望工程
我已重新启动。我只是使用TextMate和一个控制台,所以没有太多可以搞砸! – WedTM
你需要发布你的路由文件来帮助我们,但可能是它与app/controllers/api/provider_controller.rb而不是app/controllers/provider_controller调用的文件有关。 rb
区别在于额外的api文件夹。
文件结构确实包含API文件夹。路径是正确的。一切都按预期工作,除了耙路。 – WedTM
Provider
不是一个命名空间,它是一个资源,一个实际的控制器。试试这个:
namespace :api do
resources :providers do
post 'authenticate'
...
end
end
但是,我通常会同意你的看法,但目前的方式工作正常。 I.E,请求/ api/provider/authenticate和/ api/provider/customer /找到工作就好了。 – WedTM
那么,'耙路线'不起作用:)。即使您更改了该应用程序,该应用程序也应该可以工BTW:客户也应该是资源(而不是命名空间)。 –
您是否检查* app/controllers/api/provider_controller.rb *是否存在?如果有,请发布与此控制器相关的路由定义。 –
@Lukas Stejskal,是的。在那。 – WedTM