在我的Rails 4.2应用程序中,它由几个Rails引擎组成,需要引擎itemlized_spendingx
使用ajax调用在引擎biz_workflowx
中呈现文件。引擎biz_workflowx
包含在itemlized_spendingx
的应用程序控制器中,如下所示:
module ItemlizedSpendingx
class ApplicationController < ::ApplicationController
include BizWorkflowx::WfHelper
end
end
在BizWorkflowx::WfHelper
中,定义了一个操作event_action
,它在引擎link_to
的索引视图中称为带有itemlized_spendingx
的ajax。以下是响应ajax调用的event_action.js.erb
$("#newworkflow .modal-content").html('<%= j render(:file => "biz_workflowx/application/event_action.html.erb") %>');
$("#newworkflow").modal();
上面evant_action.js.erb
的目的是弹出event_action.html.erb
的视图(event_action.js.erb和event_action.html.erb都位于biz_workflowx / app / views / application /下的同一个子目录中)使用Bootstrap模态。我遇到的问题是render(:file => ..)
引发了template missing
的错误,即使File.file?('biz_workflows/app/views/application/event_action.html.erb
)在true
中返回ActionView resolver
。
即使render
看到它,event_action.html.erb
似乎也很难找到File.file?
。如何让渲染器看到它?