ruby-on-rails – 从辅助方法渲染部分
发布时间:2020-12-16 19:17:59 所属栏目:百科 来源:网络整理
导读:是否可以使用辅助方法渲染部分,您还可以从调用辅助方法的视图中传递局部变量?例如,当我直接在视图中包含此代码时,它会正确呈现部分代码: %= render :partial = "add_round",:locals = { :f = f } % 然后我将它移动到辅助方法: def addRound render :parti
是否可以使用辅助方法渲染部分,您还可以从调用辅助方法的视图中传递局部变量?例如,当我直接在视图中包含此代码时,它会正确呈现部分代码:
<%= render :partial => "add_round",:locals => { :f => f } %> 然后我将它移动到辅助方法: def addRound render :partial => "add_round",:locals => { :f => f } end 然后我再次从视图中调用它: <%= addRound %> 这不适用于:locals => {:f => f}包含在代码中.它返回了这个错误:未定义的局部变量或方法`f’.但是,addRound方法确实使用以下内容呈现内容: def addRound render :partial => "add_round" end 以这种方式编写它允许我渲染不需要传递局部变量的部分(例如纯文本字符串).但是我如何才能使用:locals => {:f =>包括在内?还有其他方法可以写出来吗? 非常感谢. 解决方法
你需要将f传递给addRound
def addRound(f) render partial: "add_round",locals: { f: f } end 并在视图中 <%= addRound(f) %> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |