2015-11-15 41 views
0

我一直在玩我的if和else語句,但它總是提供一個。無法獲取if和else語句

首先嚐試

<% if @albumable == @user %> 
<%= link_to "Edit", edit_community_album_path(@albumable, album), class: "album_edit" %> 
<% else %> 
<%= link_to "Ediiiit", edit_user_album_path(@albumable, album), class: "album_edit" %> 
<% end %> 

第二次嘗試

<% if @community == @community_id %> 

Albumable要麼是爲user_id或community_id。當我玩弄代碼時,對於用戶相冊編輯頁面和社區相冊編輯頁面,我只能得到兩個結果。我不明白如果if語句不在社區頁面中,我將能夠做出if語句,它應該生成else語句。所有的幫助表示讚賞,謝謝。

回答

1

我會建議重構此代碼以完全刪除if/else語句。例如,下面提供完全相同的功能:

<%= link_to "Edit", [:edit, @albumable, album], class: "album_edit" %> 

您可以在http://guides.rubyonrails.org/routing.html#creating-paths-and-urls-from-objects

+0

閱讀更多關於此感謝您的sooo多的那個例子。它完美地工作,並且比創建if/else語句更簡單。萬分感謝。我將閱讀您提供的鏈接以獲得更好的理解。 –

0

比較id值。根據你如何用記錄加載這些變量,Ruby可能不會認爲它們是平等的。