ruby-on-rails - 将参数传递给 HAML 部分

标签 ruby-on-rails ruby-on-rails-3 haml

使用 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/

相关文章:

ruby-on-rails - 是否可以在没有文件输入的情况下使用 ActiveStorage?

mysql - rails : Proper way for MySQL query to search multiple attributes

ruby-on-rails-3 - 如何通过rails控制台加载openssl?

jquery - 茧/jQuery : append items to relevant table

javascript - Rails 中的 HAML link_to 不会在页面加载时应用类

ruby-on-rails - 有没有办法设置一个假的电子邮件收件箱来检查电子邮件是否在 ruby​​ on rails 中发送?

ruby-on-rails - rails ActiveRecord : scope incoherence

ruby-on-rails-3 - Rails 3 - 多个 Controller 之间共享的代码 - 将其放在哪里?

ruby-on-rails-3 - 导轨 3 : A/B Testing App Features

ruby-on-rails - 使用 HAML(在 Ruby on Rails 中),有没有办法生成 50 个嵌套 DIV?