2013-03-15 86 views
0

我定義像這樣的方法:Ruby on Rails的字符串問題

def users_followers 
    if current_user == @user 
    "People you're following" 
    else 
    "People " 
    your_page(@user).chomp("Page") 
    " following" 
    end 
end 

我在與第二部分的麻煩。我所看到的全是" following"這個詞。你能幫我解決這個問題嗎?

事實上,它留下了'後'之前的空間,我需要保留。

+0

紅寶石不知道你想加入的三根弦,你必須告訴它這樣做。通常我們使用'+'或'Array.join'或插入一個字符串。 – 2013-03-15 22:16:54

回答

4

這是因爲在你的其他人中,你有三個陳述,其中最後一個被返回。將它們連接在一起:

def users_followers 
    if current_user == @user 
    "People you're following" 
    else 
    "People " + 
    your_page(@user).chomp("Page") + 
    " following" 
    end 
end 
+2

或「人物#{your_page(@user).chomp('Page')}關注」 – 2013-03-15 22:03:30

+0

感謝您的答覆!現在工作正常,在你的幫助下。 – CHarris 2013-03-15 22:11:39

4

該方法將返回最後一條語句的結果。在該方法的else塊中將會是語句" following"。由於該部分前面幾行的結果未分配到任何位置,因此結果將被忽略。

您可以使用字符串插值來創建一個字符串返回:

"People #{your_page(@user).chomp("Page")} following"