Gen*_*nís 3 ruby-on-rails render
我有一个TasksController和一个SubtasksController.在SubtasksController动作的给定时刻,我想:
# app/controllers/tasks_controllers.rb
render 'tasks/index' # Or: render template: 'tasks/index'
Run Code Online (Sandbox Code Playgroud)
从视图中调用该操作时,看起来rails试图呈现错误的部分:
ActionView::Template::Error (Missing partial subtasks/tasks, private_area/tasks, application/tasks with {:locale=>[:ca, :es], :formats=>[:js, :html], :handlers=>[:erb, :builder, :slim, :jbuilder, :coffee, :haml]}. Searched in:
* "/Users/****/app/views"
Run Code Online (Sandbox Code Playgroud)
我真的不明白这里发生了什么,有什么想法吗?
当您呈现另一个控制器操作时,显示的页面将在调用控制器视图中查找其自身内的任何部分.
您可以通过明确声明页面中部分内容的路径来解决这个问题,这样即使从另一个控制器调用它,它也总是在正确的位置查找.
# tasks/index page
<%= render 'tasks/some_partial' %>
Run Code Online (Sandbox Code Playgroud)
现在无论哪个控制器呈现此页面,它总是会查找tasks其部分内容.
| 归档时间: |
|
| 查看次数: |
911 次 |
| 最近记录: |