我正在翻新我們的CMS,並遇到了我不知道要採用哪種解決方案的情況。基本上,我們每個客戶都將自己的網站內容存放在自己的數據庫中。這包括內容,調查,訪客使用的搜索詞,菜單結構等。關於如何保持網站偏好的不同選項?
我們客戶網站上的很多內容都是動態的,他們可以通過CMS更改它們。所有這些數據都保存在我設計的關係數據庫中,但是我在幾個將這些首選項保存在表中的情況下運行會過度。
例如,CMS允許他們發送電子郵件到收件人列表。他們可以選擇使用我們的服務器,或者他們可以放入他們自己的smtp服務器。然而,在這種情況下,創建一個帶有「mailService」列的表並且讓它保存特定值是有點矯枉過正的,因爲表只會保存一行。
下面是我通過搜索本網站和/或谷歌了一下拿出一些想法,但我也不太清楚什麼他們的優點和缺點是:
- 基本上容納所有像我上面提到的表格中的偏好,我想避免的東西。
- 將所有這些「單個」首選項保存在一個XML文件中,當它們改變其設置時我將修改它。
- 有一個名爲preferences的表,其中包含以下columsn:id,preferenceName,value。每當我有一個新的偏好,我只是添加它,修改它或刪除它(我不喜歡這個選項,因爲我覺得我必須硬編碼太多的值......至少從方式我看到了實現)
我很傾向於XML的想法,但我想從這裏的好社區的一些反饋Stackoverflow :)也許使用XML將是一個可怕的想法我完全忽略了一個原因,或者有一個你愚蠢的原因 - 並不是你只是做了這個解決方案。感謝您的任何意見!
+1用於標識它不應該是數據庫...或XML。這裏有很多文件格式,XML並不總是最好的選擇。 **特別是**僅用於鍵/值映射。 – 2010-07-05 18:52:49
感謝您的信息。我從來沒有聽說過YAML,因此我首先在這裏提出這個問題。 – Gazillion 2010-07-05 20:25:13