我的問題非常簡單。如果答案是顯而易見的,我會先問它,然後我會解釋我的意思,以防情況不明顯。從部分調用rails應用程序的主要「收益」
從部分而不是直接從layout.html.haml文件中調用主'yield'調用是否被認爲是可行的?這樣做是否會導致任何類型的性能損失。
解釋...
我呼籲application.html.haml一個佈局文件。
我希望我的主要內容佔用整個頁面寬度,除非該頁面存在邊欄。
如果有側邊欄,那麼我希望主要內容佔用66%的頁面寬度,邊欄用盡剩餘空間。
我在我的佈局如下:
#content
- if show_sidebar?
#main
= yield
#sidebar
= yield(:sidebar)
-else
= yield
內容DIV是100%的頁面寬度。如果沒有側邊欄,那麼'收益'結果會進入這個div。如果存在側邊欄,那麼主要收益會進入稱爲#main的div,該頁面寬度爲66%。
很好,這工作正常。
現在,爲了保持我的主視圖整潔,我已經重構我的代碼一點點,以便它現在看起來是這樣的:
#content
- if show_sidebar?
- render :partial => 'main_with_sidebar'
-else
= yield
然後在局部_main_with_sidebar.html.haml
我有這樣的:
#main
= yield
#sidebar
= yield(:sidebar)
所以一切都是一樣的,除了每當有側邊欄存在的情況下,主要收益率都是從一個部分調用的。
所以我的問題是關於這是否被認爲是最佳實踐。或者我應該堅持讓一個稍微更加複雜的application.html.haml文件並擺脫部分?它似乎沒有造成任何問題,但我想知道如果我在做了太多事情之前做錯了什麼。
是它看起來愚蠢的一些你們,但我是一個設計師,而不是一個開發和這樣的事情是新的我....
謝謝。這正是我以前的做法,說實話,我認爲這就是我將不得不繼續這樣做的原因。我認爲這很容易,因爲我正在與其他設計師合作,如果這樣做可能會更適合他們。 謝謝。不能相信我花了多長時間仔細考慮過這個問題! – stephenmurdoch 2009-12-17 13:08:34