是否有可能将本地人通过部分传递到另一部分?

bra*_*h14 7 ruby-on-rails partials

这是一个例子来说明这个问题:

应用程序/视图/职位/ show.html.haml

.post
  = render partial: 'avatar', locals: { user: @post.user }
  = @post.title
Run Code Online (Sandbox Code Playgroud)

应用程序/视图/共享/ _avatar.html.haml

.avatar
  = render partial: 'avatar_image', locals: { user: user }
  = user.name
Run Code Online (Sandbox Code Playgroud)

应用程序/视图/共享/ _avatar_image.html.haml

= image_tag user.image.url
Run Code Online (Sandbox Code Playgroud)

将部分接收的局部传递_avatar.html.haml给部分_avatar_image.html.haml将消除重复本地的需要(此处:) { user: user }.

我知道,我可以使用实例变量.但我想知道是否有办法将所有收到的当地人一般性地传递给基础部分.

ush*_*sha 18

您可以使用local_assigns访问传递给您的局部的locals哈希

.avatar
  = render partial: 'avatar_image', locals: local_assigns
  = user.name
Run Code Online (Sandbox Code Playgroud)