我收到一个我无法弄清楚的错误:
ActionView::MissingTemplate (Missing template cluster/delete_stuff.erb in view path app/views)
<...snip trace...>
Rendering rescues/layout (internal_server_error)
我正在“增强”其他代码,并遵循他们设置的惯例,他们的代码如下:
<%= render :partial => "other_stuff" %>
一个名为 _other_stuff.html.erb 的文件,一切正常,但是当我复制这些小片段时,我得到了上述错误。有任何想法吗?我需要弄清楚这里发生的事情。
答案 0 :(得分:28)
原来我没有
render :something
在我的控制器方法中,所以我猜Rails认为必须有一个“delete_stuff.erb”来知道该怎么做。添加了渲染,错误消息就消失了。
答案 1 :(得分:4)
ActionView
将在当前控制器视图文件夹中查找模板/部分,除非在控制器中更改了其视图路径 - 您可以prepend and append不同的视图路径,以便首先尝试匹配。由于您具体提到了部分内容,请查看partials上的文档。
您的views / cluster目录中是否有_delete_stuff.html.erb
个文件?如果不是,_delete_stuff.html.erb
部分在哪里?如果它不在同一目录中,则必须致电render :partial => 'other_directory/delete_stuff'
以显示部分内容。
答案 2 :(得分:0)
就我而言,这是后台作业的问题。 Sidekiq 使用旧代码运行(有些部署没有正确重启)。
在杀死 sidekiq 和 deamon next start 后,它运行良好,没有丢失模板