2014-09-24 65 views
0

在MVC模型考慮3個問題:包括頁眉/頁腳文件,VARCHAR作爲PK,切換語言

1.Include頁眉/頁腳文件

它是常見的包括頁眉或頁腳文件重用碼? 但是我有一個問題:如果我有幾個需要添加到頭文件的css/js文件,並且它們在不同的控制器中可能不總是相同的。而且我不想將它們全部添加到頭部。我能怎麼做?

  1. Varchar as pk?

假設我有一個表「用戶」和具有自動增量整數列ID和varchar列作爲用戶名這是獨一無二的。實際上,我總是使用用戶名來搜索數據。是否值得通過用戶名取回id,然後使用id作爲sql操作?最好將用戶名設置爲pk?

3.Language切換

假設我有一個表「名作」,其中包括一列,它是英文的形式。該名稱將打印在網站上。我該如何切換語言?

我想過一個解決方案,那就是名字作爲變量名而不是真實的數據。 如名稱存儲名爲cat_product dnd的變量名稱,然後將其用作$ lang ['cat_product'] ='Product';

這是一個好方法嗎?

+0

嗨@Steven。如果你能寫出你的問題,以便他們對未來的讀者有很大的興趣,這在這裏有很大的幫助。這意味着要將每個帖子的問題分成一個主題。我很欣賞這種格式需要一點習慣,但我們不是論壇或聊天室 - 我們正在整理有用的問題和答案。 – halfer 2014-09-24 20:54:31

回答

1
  1. 是的,它是常見的做法是重新使用頁眉和頁腳,以儘量減少代碼複製,然而,沒有什麼可以阻止你從飼養,要嚴格最小,然後計算和附加元素和風格,以我們的頁腳和根據報頭你在哪個頁面上。

  2. 即使用戶名是唯一的,但使用唯一標識來標識表中的用戶仍然是一種更好的做法,因爲它們將比您的SQL引擎更快。

  3. 具有不同語言的網站的常見做法是從用戶pref文件(或配置文件)加載語言,並在代碼中使用變量而不是純文本。

0
  1. 在控制器(這裏是加載頁眉/頁腳這裏我想)你可以加載你需要在每個控制器腳本數組加載你的觀點之前,和PHP在header/footer.php循環,您可以在其中打印每個位置的<script></script>標籤。

  2. 總是更好的數字自動增量id而不是varchar。當您必須在varchar中生成新代碼時,代碼複雜度會有所增加。如果你可以使用int id,那麼做。

  3. 我以前有幾個文件es_<file>.php,en_<file>.php等...在不同語言中具有相同的變量和相同的內容。然後你只需加載你需要的文件並按照你的意願使用變量。