我正在尝试在名为“top_layout.html.erb”的文件中的“menupersonas”控制器中显示导航标签菜单
我正在尝试使用渲染显示该菜单,但是来自“personas”和“personascorreos”视图:
“/ personas / 4 / edit”和“/personascorreos/index.html.erb”
这样:
<%= render file: "menupersonas/top_layout" %>
我澄清“人物角色”has_many“personascorreos”
所以我需要显示的菜单(top_layout.html.erb)中的链接是“link_to(persona_personastelefonos_path(persona))”
但我得到了这个错误:“未定义的局部变量或方法`persona'”
我想知道问题是@personascorreos = @persona.personascorreos.all
控制器中未定义menupersonas
但我的问题是:有没有办法从personascorreos
调用该信息而无需在menupersonas
中再次定义?
答案 0 :(得分:0)
如果从另一个视图渲染视图(任何部分视图),则不会调用控制器方法。
我认为你在渲染视图时错过了本地人的传递。试试:
<%= render file: "menupersonas/top_layout", persona: @persona %>
或任何定义渲染视图中缺少的本地的内容。
GL&amp; HF。