2013-02-15 67 views
9

与大多数纯文本电子邮件相关的问题不同,我的问题是在Rails发送的纯文本电子邮件中存在太多换行符如何控制纯文本电子邮件视图中的换行符(.text.erb)

为了简化启动过程,我彻底删除了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 

当连续出现多个条件时,这会变得非常混乱。

当然,一定有更好的办法!

回答

3

如果你最终与-%>再培训局标记,应避免多余的空白:

<%= "foo" -%> 
+0

我需要做的'<%=“富\ n”如果事情 - %>'如果我想新行* *当且仅当**文本被插入时? – Felix 2013-02-15 15:36:58

+0

我认为有一个更干净的方法来做到这一点,看到我的答案。 – 2013-08-01 04:57:19

4

这是回答Felix的安迪韦特的回答问题(我不觉得多行代码是可能的意见和这个问题是多行代码)。

我觉得<%= "foo\n" if something -%>会的工作,但是这似乎更清洁对我说:

Line 1 
<% if something -%> 
foo 
<% end -%> 
Line 3 
相关问题