与大多数纯文本电子邮件相关的问题不同,我的问题是Rails发送的纯文本电子邮件中有过多的换行符。
为了简单起见,我完全抛弃了HTML电子邮件,只使用纯文本电子邮件(使用.text.erb视图)。我的问题出现在视图中有条件行的地方,因为我的视图文件中的新代码行会转移到电子邮件中。
例如:
Line 1
<%= "Line 2" if false %>
Line 3
将呈现为:
Line 1
Line 3
而不是预期的输出:
Line 1
Line 3
我目前的黑客是使用以下内容:
Line 1
<%= "Line 2\n" if false %>Line 3
当连续存在多个条件时,这可能会变得非常混乱。
当然必须有更好的方法!
答案 0 :(得分:4)
这是为了回答Felix关于Andy Waite的回答的问题(我不认为评论中可以使用多行代码,这个问题是关于多行代码)。
我认为<%= "foo\n" if something -%>
会起作用,但这对我来说似乎更清晰:
Line 1
<% if something -%>
foo
<% end -%>
Line 3
答案 1 :(得分:3)
如果您使用-%>
结束ERB标记,应该避免无关的空格:
<%= "foo" -%>