使用 Rails 3.2.11,无论 HAML 的最新版本是什么,我一直在尝试将 block 传递给 HAML 部分。我想我可以在 HAML 文件中使用一个变量,然后在渲染部分之前分配该变量,但这感觉真的很草率和僵化。
我注意到在rails应用程序布局中,有一个=yield
,这显然是我所有 View 渲染的地方。有没有办法让我在 HAML 部分中干净地使用参数和 block ?
最佳答案
您可以将任何您想要的内容传递给部分。你可以使用这样的东西:
= render "people/person", :object => @manager, :locals => { :show_details => true }
您还可以一起使用yield和content_for来处理 block 。如果您执行以下操作:
- content_for :profile_links do
%li Hello #{@manager.name}
%li= link_to "Settings", @manager.profile
然后在您的帐户菜单中使用:
%ul#account_menu
= yield :profile_links
%li= link_to "Sign Out", sign_out_url
关于ruby-on-rails - 将参数传递给 HAML 部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14697323/