如何避免HAML ruby​​块评估添加换行符

Kar*_* S. 5 haml ruby-on-rails-3

我正在使用content_for助手来设置我的rails 3应用程序中的页面标题.我仍在某些地方使用的一段erb是

<title><%= yield(:title) -></title>
Run Code Online (Sandbox Code Playgroud)

或用HAML写的

%title= yield(:title)
Run Code Online (Sandbox Code Playgroud)

现在我有一个HAML模板设置这个标题:

- content_for :title do
  My awesome title
- content_for :something_else do
Run Code Online (Sandbox Code Playgroud)

结果

<title>My awesome title
</title>
Run Code Online (Sandbox Code Playgroud)

我怎么能避免换线呢</title>?它肯定是设置的:title- 添加+"X"将把X新行放在后面.

我已经试过了

-< content_for :title do
-> content_for :title do
Run Code Online (Sandbox Code Playgroud)

但任何一个都会导致错误.删除空格似乎不适用于ruby评估.

CDu*_*Dub 3

在布局模板中,执行以下操作:

%title= content_for?(:title) ? "#{yield(:title)}" : "Default Title"

然后在您的内容模板中执行以下操作:

= content_for(:title, "Welcome to my home page!")