2011-04-26 46 views
2

我正在開發一個需要大量應用程序邏輯(主要是數據庫訪問)的移動Web應用程序(帶有jQuery移動),並且需要儘可能靈活地創建它(我遵循OO PHP與ORM)。Modx vs Yii作爲應用程序框架

通過對PHP框架的大量研究,我得出了Yii現在是最有希望的框架的結論。最近,我撞向了模態革命。儘管我沒有在尋找一個CMS系統,但它作爲一個CMF系統的方法和模板,片段和塊的清晰分離提供了很好的可擴展性。

對於每個模型的優點(尤其是學習曲線),您有何看法?

+0

這可能很難得到意見,因爲yii和modx是堆棧溢出的較小社區。 – 2011-04-26 19:45:41

回答

5

如果你想創建一個Web應用程序使用像Yii的一個框架(儘管Symfony的看起來相當有前途的太恕我直言)

如果你正在建設一個網站,我會說,那是鏌鋣罰款(其實真棒)

通過網站,我的意思是典型的頁面內容的關係(最喜歡的公司的網站)

通過應用我的意思是少單頁內容的網站,如房地產搜索網站或計算器

鏌鋣是我的,放手,最喜歡的CMS創建超過5頁的網站。但不久之前,我面臨着類似的問題,框架或模塊?我最終選擇了一個冒險的選擇......那就是MODx Revolution。並且對此感到遺憾......雷沃是一個相當新的東西,在所有問題中,我發現它是最糟糕的。我相信新版本更快,但你知道他們對第一印象的評價。無論如何,埃沃仍然是我的書中的王,但那一邊...

好的,好吧,這裏是它的地方分解。爲什麼不選擇CMS(甚至與modx :)一樣好的主要原因是數據庫結構。在所有CMS中,數據庫都是面向顯示頁面的,因此您將擁有典型的標題,鏈接,內容,元數據等。雖然modx通過模板變量輕鬆添加附加字段,創建了多對多和一對一的對話框,許多關係都處於不可能和非常困難之間。 (認爲​​分隔字符串,創建一個單獨的表格,爲自定義模板創建處理多個項目的小部件)。如果你使用框架,你必須實現許多好的東西,大多數CMS都已經想出了,比如fckeditor實現,圖片上傳器,用戶管理等等。

創意路由實現起來很簡單的框架的另一個優點。 CMSes在這方面比較困難,但並非不可能。但如果你對一個框架感到滿意(或者想用它來學習它),你可能會更好地服務於框架路線。那就是如果你相信自己實現比MODx更好的安全性。

好運

+0

所以,你聽起來更像是說你用他們已經寫過的東西使用modx,但要注意幾個讓你後悔的陷阱......是嗎? – MER 2014-04-07 18:21:59

+1

是的。這個回覆已經有幾年了,modX可能已經發生了很大的變化,但是我現在用一種不同的方式來總結它,比如「做你自己喜歡的事情」,即如果你對PHP和SQL有很好的瞭解,您可以自己編寫自己的適合您需求的CMS等價物,否則就會依賴於其他人已經投入的產品,使得創建網站變得更加輕鬆快捷。 – Daniel 2014-04-08 00:32:22

+0

非常感謝。 我們計劃將身份驗證方案,管理界面和經過測試的代碼庫用作modx或concrete5作爲Web應用程序的基礎。我研究過使用一個框架(我真正用過的兩個程序中只有兩個是CodeIgniter和Zend),爲了這兩個目的和時間明智地編寫或修改經過測試和可靠的代碼,這似乎沒有任何意義。 (注意:這個應用程序將永遠不會有1000個用戶現在談論10到20,如果我們認爲它是有道理的,也許達到最低的數百[儘管]可能] – MER 2014-04-08 06:19:14

3

我們使用鏌鋣創建eco2data.com這是一個包含動態混合Web應用程序環境項目和應用程序頁面(組合管理爲例)

我們回顧網頁內容框架和CMF,並決定採用MODx evo。它可以很好地處理所有登錄內容(創建用戶,登錄,訪問權限),並幫助我們將php代碼與模板分開。我們使用鏌鋣內容如下:

  • 型號:PHP文件調用商戶DB
  • 查看:模板/組塊
  • 控制器:段代碼同時包含模型PHP文件(對象),過程信息和叫

大部分的業務內容都存儲在另一個數據庫,而我們鏌鋣頁面只包含pH值

缺點是大部分的代碼存儲在鏌鋣DB,所以它是很難與版本控制系統一起工作。

+0

因此,我們選擇了modx revo爲我們當前的網絡應用程序項目&發現,大多數,如果不是全部的代碼可以創建爲外部文件(我在我的IDE中修改和存儲在源代碼管理中)。 此外,我從Bob(http://bobsguides.com/custom-db-tables.html)找到了關於如何使用自定義數據庫表(對我的要求)的信息。因此,即使DB創建腳本可以放在源代碼控制中... – MER 2014-04-25 21:01:24

+0

是的revo比管理代碼好得多。 – Go4It 2014-07-24 08:43:05