This is OA's framework, It is based on CodeIgniter version 2.1.4!
本作品授權採用 姓名標示-非商業性 2.0 台灣 (CC BY-NC 2.0 TW) 授權,詳見 http://creativecommons.org/licenses/by-nc/2.0/tw/
這是一個以 CodeIgniter 2.1.4 為基礎版本,將其新增進階功能的一套好用的 framework!
基本改寫項目如下:
匯入並且使用 PHP ActiveRecord ORM。
匯入使用 Redis cache library。
匯入使用 OrmUploader 的 library。(註1)
匯入使用 cell 的 library。(註2)
Identity library 與 identity helper 的使用。
Config 的 library 與應用。
Cache file folder 的重新定義。
Controller core loading 規則順序的改變。
匯入 OA helper 的功能 function。
匯入 可記錄 delay request 的 log 以及 query log。
匯入並且可使用 scss。
匯入並且可使用 compass, gulp.. 等。
匯入 OA-ElasticaSearch 加入 Elastica Search 的使用以及 command。
基本快速地建立起常用資料夾以及檔案,例如 log files、temp folders... 等。
請先確保您的 server 可以正常使用 CodeIgniter。
打開終端機,並且在你的 DocumentRoot(註3) 下,輸入 git clone https://github.com/comdan66/oaci.git
。
進入資料夾,並且下初始指令,終端機輸入 php init db_user db_password db_name
,即完成。
(參數 db_user、db_password、db_name 分別代表資料庫的 使用者名稱、密碼、資料庫名稱。)
更多初始化指令可以 點我。
此版本中已經建立多個快速建置檔案的指令,其中包含如下:
create
delete
clean
語法表格
新增 - create
_ | file | type | name | action -----|--------|------------|-----------------|---------------- php | create | controller | controller_name | [site | admin | delay] php | create | model | model_name | [[(-p | -pic) column_name1, column_name2...] | [(-f | -file) column_name1, column_name2...]] php | create | migration | table_name | [(-a | -add) | (-e | -edit) | (-d | -delete | -del | -drop)] php | create | cell | cell_name | [method_name1, method_name2...] php | create | search | search_name
刪除 - delete
_ | file | type | name | action -----|--------|------------|-----------------|---------------- php | delete | controller | controller_name | [site | admin | delay] php | delete | model | model_name | php | delete | cell | cell_name | php | delete | search | search_name
migration
_ | file | version -----|-----------|-------------------- php | migration | [0 | 1 | 2 |...]
清除 - clean
_ | file | type | name
-----|--------|-----------|-----------------------------------
php | clean | cache | [cell | file | model | [assets | static]]
基本指令為 php create controller controller_name [site | admin | delay]
。
php create controller test site
。基本指令為 php create migration table_name [(-a | -add) | (-e | -edit) | (-d | -delete | -del | -drop)]
。
php create migration test add
,若要是想對 test 這張資料表做修改,則輸入 php create migration test edit
,刪除則是 php create migration test del
。基本指令為 [[(-p | -pic) column_name1, column_name2...] | [(-f | -file) column_name1, column_name2...]]
。
php create model test
,若 test 有兩個圖片欄位名稱分別為 avatar、cover,則是輸入 php create model test -p avatar cover
。基本指令為 php create cell cell_name [method_name1, method_name2...]
。
php create cell test
,若是想一開始就建立名稱為 index 以及 add 的 method,則輸入 php create cell test index add
。基本指令為 php delete controller controller_name [site | admin | delay]
。
php delete controller test site
。基本指令為 php delete model model_name
。
php delete model test
。基本指令為 php delete cell cell_name
。
php delete cell test
。基本指令為 php migration
。
php migration
,若是要降版至第 0 版,則輸入 php migration 0
。基本指令為 php clean cache [cell | file | model | [assets | static]]
。
php clean cache
。在一開始建立時會使用到,主要就是處理一些暫存資料夾、資料庫設定檔案..等設定,基本指令為 php init [root [password [table [127.0.0.1]]]]
。
php init oa 1234 oaci
。此版本也內建 Demo 版本指令,只要一個指令,就可以快速建制一個 CRUD 的版本 Sample!
其主要是分別會建立起 event、attendee、tag、tag_event_map 這四張關係表,借由這四張表去演練相關 model、 controller 範例
初步創建完後,migration 會自動更新,所以不必特地去執行 migration 指令。
Demo 指令分別如下:
基本指令為 php create demo
。
基本指令為 php delete demo
。
command/gulp/
,使用前請記得移到該目錄並且下 npm install .
指令初始。command/compass/
,使用前請記得移到該目錄並且下 compass watch
即可開始。command/compass/config.rb
內設定。註1: OrmImageUploader 主要參考於 Ruby on Rails 的 carrierwave所設計。 ↩
註2: Cell 主要參考於 Ruby on Rails 的 cells 所設計。 ↩
註3: DocumentRoot 是指 web 的資料夾位置,一般 Mac OSX 系統下的 apache 預設值為 /Library/WebServer/Documents/
。 ↩