我正在尝试根据条件渲染视图+布局。以下代码似乎有效但无法访问@objects
预先设置。我用ProfilesController
方法Show。
@profiles = Profile.where(:user_id => current_user.id).first
if @profile.nil? == true
render :view => "show",
:layout => "application"
else
render :template => "profiles/my_profile",
:layout => "profiles"
end
提供输出:
undefined method `profiles' for nil:NilClass
如何根据条件进行渲染并仍然保留上一组@objects
(在这种情况下是对@profiles
的访问权限)
答案 0 :(得分:0)
在视图中设置布局不是要走的路,它不是轨道方式,即使可能也不建议。我更改了控制器操作中的设置布局,并在我的show部分中渲染了正确的代码,完全解决了问题。