你应该只在局部使用局部变量吗?

egg*_*rop 7 ruby-on-rails instance-variables local-variables partial

使用局部变量似乎是可取的,可以在应用程序范围内使用,以避免整个应用程序的依赖.

但是在单个控制器中,引用您知道将在使用partial的所有操作中可用的实例变量似乎是可以接受的.

但是,如果执行此操作,则可能存在风险,即特定操作可能会更改为不再向其视图提供实例变量.部分将停止工作.但是,我不确定这是否真的是一个问题,因为常规视图会遇到相同的风险.

如果在部分中引用实例变量,这有关系吗?

Tim*_*van 7

你今天就开始了!:-)

你可以将变量传递给partial,:locals以保持这一切都很好.例如,

render :partial => 'my_partial', :locals => { :some_variable => some_variable, :some_important_value => 'an important point!' }
Run Code Online (Sandbox Code Playgroud)

然后在局部视图中可以使用这些变量:

<%= some_variable %>
<%= some_important_value %>
Run Code Online (Sandbox Code Playgroud)

但是,在partials中使用实例变量没有什么特别的错误.