公司開發(fā)一直使用的是OneThink框架缀皱,由于需求需要,想寫一個系統(tǒng)动猬,但是又要和公司系統(tǒng)不完全分離啤斗,故數(shù)據庫要使用一個,方便查表赁咙。
ThinkCMF是一款基于ThinkPHP+MYSQL開發(fā)的中文內容管理框架(CMF)钮莲,關鍵開源。
安裝
去到官網下載最新的cmf框架彼水,然后直接將文件夾放到開發(fā)目錄崔拥,在hosts文件中配好域名就可以直接進行安裝了,非常方便凤覆。
但是問題來了链瓦,在安裝過程中會讓你輸入數(shù)據庫前綴,如(think_)盯桦,我的要求是和公司的OT公用一張表澡绩,但是倘若你直接輸入think_,它會報錯俺附,原因是表名沖突,由于OT在安裝時也會默認導入很多常規(guī)表溪掀,這是如出一轍的事镣。
解決方法:打開application文件夾,進入install,找到install3的頁面璃哟,將必須填寫表前綴刪掉氛琢,這樣就可以在安裝時使表前綴為空,避免后期帶來不必要的麻煩随闪。
使用
那么阳似,安裝成功的驚喜不用持續(xù)太久,因為cmf的寫法與ot還是存在一點差別的铐伴,不過我個人還是更喜歡cmf中的寫法撮奏,每一個功能塊的都得很開,所有功能都基于application文件夾当宴,每一個單獨一個文件夾畜吊,里面寫好控制器和公共方法以及模型,功能之間互不干涉户矢,很清晰玲献。頁面文件位于admin下的theme和theme文件夾下,也是單獨文件夾形式梯浪。
新建功能
比如我們要新建一個管理商品的功能(Goods)捌年,首先在application中新建一個Goods
文件夾,在Goods中新建一個Common挂洛、Controller和Model文件夾礼预,在Controller中新建文件 GoodsListController.class.php
,對應著在Model中建ListModel.class.php
抹锄,在 Common
中新建文件Function.php備用逆瑞,在 /Admin/Theme/
下新建Goods文件夾,新建文件index.html
伙单,這時获高,一個基本的功能模塊雛形就形成了。
兩個小坑
在所以文件都寫好吻育,也在控制器中
$this->display
了后念秧,并且在后臺菜單管理中合理添加了路徑后,你會發(fā)現(xiàn)還是打不開0.0布疼,恩摊趾,這就對了。不然怎么說是坑呢游两。我們找到application/Common/config.php
砾层,打開文件找到MODULE_ALLOW_LIST
配置項,在后面加上'Goods'
贱案,然后打開網頁就能看到了肛炮。由于建立框架時,前綴為空,所以在使用model時還是會有問題侨糟,這時碍扔,我們在Model文件中class下加上一句
protected $tableName = "think_goods";
,就能正常使用model了秕重。
最后
祝大家在程序的坑中越陷越深不同!Happy Work Happy EveryDay!
--------Night 溶耘! Madman