gpt4 book ai didi

ruby-on-rails - 渲染部分:object vs :locals

转载 作者:行者123 更新时间:2023-12-03 05:29:19 26 4
gpt4 key购买 nike

<%= render :partial => 'partial/path', :locals => {:xyz => 'abc'} %>

对比

<%= render :partial => 'partial/path', :object => @some_object %>

我认为第一个使名为 xyz 的局部变量在局部中可用,第二个使名为 object 的局部变量在局部中可用。那么区别是什么呢? (除了 locals 允许多个变量)

最佳答案

第二种形式

render :partial => 'account', :object => @some_account

将确保部分中的account变量设置为@some_account。您可以使用 :as 选项重命名该变量。

:locals最大的优点是

  • 您对对象和名称有非常清晰的控制
  • 您可以分配多个变量

所以你可以做类似的事情

render partial => 'some_view', :locals => { :user => account.user, :details => some_details_we_retrieved }

在需要时可以进行清晰的分离。

:locals 方法的缺点是它比较冗长,而且有时很简单

render :partial => 'account'

相同
render :partial => 'account', :locals => {:account => @account }

因此,请使用最适合您的(或最适合的)。

关于ruby-on-rails - 渲染部分:object vs :locals,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5122223/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com