在Rails 5.1上,我有这个模块:
app/datatables/financing/merchants_datatable.rb
在我的merchants_controller.rb文件中,我有这段代码:
def index
...
respond_to do |format|
format.html
format.json { render json: Datatables::Financing::MerchantsDatatable.new(view_context) }
end
end
当我尝试运行我的test / controllers / merchants_controller_test.rb时,我遇到了这个错误:
NameError: uninitialized constant Financing::MerchantsController::Datatables
如何在测试中加载merchants_datatable.rb模块?
谢谢!
答案 0 :(得分:2)
Ruby似乎对您的模块结构感到困惑。变化
/canary
到
format.json { render json: Datatables::Financing::MerchantsDatatable.new(view_context) }
告诉Ruby不要开始在format.json { render json: ::Datatables::Financing::MerchantsDatatable.new(view_context) }
命名空间内搜索Datatables
。