当我在路由中使用命名空间将事物放入文件夹时,出现了错误。当事物(控制器,查看文件等)不是在一个特殊的文件夹中时,它工作得很好。你基本上可以点击“投票”让企业得到提升(还有“促销”和“投票”模式)。我只想测试实际的API。
当我执行搜索查询时会发生错误。
Business::Bar.promoted_factual app/models/business/bar.rb,第111行
def promoted_factual params_query, place, query
promoted_factual_ids = Vote.promoted_factual_ids params_query, place
promoted_factual_ids.reject! { |id| !Vote.find_by_factual_id(id).live_vote? }Business::BarsController#promoted_factual app/控制器/业务/bars_Controller.rb,第81行
def promoted_factual
@promoted_factual = Bar.promoted_factual params[:query], params[:place], @query
...
end路线
namespace :business do
match 'lsearch' => "bars#lsearch", via: [:get]
post 'vote' => 'votes#create', as: :vote
resources :bars
end发布于 2014-04-03 21:54:17
根据错误,NameError, uninitialized constant Vote在app/models文件夹中没有一个名为Vote的模型。因此,您将得到错误。
同样,如果您有投票类,但它位于app/models/business目录中,那么您应该以Business::Vote的形式访问它。例如:promoted_factual应该如下所示:
def promoted_factual params_query, place, query
promoted_factual_ids = Business::Vote.promoted_factual_ids params_query, place
promoted_factual_ids.reject! { |id| !Business::Vote.find_by_factual_id(id).live_vote? }
endhttps://stackoverflow.com/questions/22849392
复制相似问题