2013-02-15 29 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 
相關問題