- 免費!免費!免費!-> 找 Freeware / Open Source Software
- 簡單易用的web介面,支援 CRUD operation (增刪改查)
- 批次匯入現有資料
- 以選單的方式輸入資料
- 條件式的查詢、篩選資料
- 保留資料異動的 log
- 利用 Joomla! 內建的角色:管理者/一般使用者 來實作權限控管
- 管理者:可讀寫所有欄位
- 一般使用者(有登入):
- 大部分欄位可讀,不可修改
- 有某些欄位不可讀(看不見),當然不可修改
- 在修改的 view 中 (link to detail) 都是唯讀
- 一般使用者(沒登入):什麼都看不到
Joomla 豐富的擴充套件 (extension) 可以在 Joomla Extensions 找到 (全都是英文的),共有 4276 個 extension,分為數十個大類別,其中在 Contacts & Feedback 中有一個 Forms 的類別,在瀏覽的時候要注意,Type 為 Commercial 的是商業軟體,要錢低;Type 為 Non-Commercial 的才是我們要找的免費擴充套件!
點進去這次要使用的套件:Fabrik – as joomla app builder 以後,畫面如下:
Fabrik 這個套件的官網比較複雜些,包括很多 templates、nodules 和 plug-ins,套件主程式反而放在下載頁面的最下面:
下載好 Fabrik 擴充套件主程式後,安裝方式請參考:利用 Joomla 做資產管理 (Asset Management) -2 : 安裝過程紀要 (Linux)
接下來要介紹 Fabrik 擴充套件的設定。首先登入管理員後台,進入 Fabrik 套件的管理介面:
包括 Forms、Tables、Groups、Elements 都是需要設定的:
步驟一:新增一個 Fabrik Form
在 Forms 管理介面中,按最右邊的「新增」以新增一個 Form:
Form 即為使用者在網頁中輸入資料的表單,表單中的每一項資料稱為一個 Element。設定好 Table name 後,Fabrik 會在 Joomla DB 中建立一個同名的 table,同時也會在 Groups 中新增一個同名的 Group,屬於此 Group 的 Elements (欄位)就會出現在接受使用者輸入資料的表單。
步驟二:新增一個 Fabrik Table
在 Table 管理介面中,按最右邊的「新增」以新增一個 Table:
此時在「Data」的設定中的「Link to table」,要選擇剛剛在新增 Form 時所設定的 Table name:
Table 用來呈現儲存於DB中的資料,並提供Advanced search功能,在過濾資料時非常方便。以下是此 Table 的存取權限設定,這裡使用的都是 Joomla 內建的角色 (role),「註冊會員」是指正確登入 Joomla 網站的人,而「管理者」則是擁有 Joomla 網站管理者權限的人。
以下圖的設定為例,必須要先登入網站才能看到 DB 中的資料,而只有管理者有權限可以新增/修改資料。
在過濾設定部分,建議採用以下設定:
進階搜尋的畫面如下,操作上很直覺:
Search all 的功能則是可以搜尋此 Table 內所有欄位的所有內容 (就是 LIKE 的效果啦):
Table 還可進一步設定匯入/匯出資料的權限:
步驟三:開始新增 Form 中用來蒐集使用者輸入資料的欄位 - Element
以下的設定都與權限控管有關,要特別注意。以下先以 Element type = text area 為例:
以一般使用者身分登入是看不到 VIP 欄位的:
一般使用者也無法修改 DB 中的資料:
若以管理者身分登入,則可看到 VIP 欄位:
管理者也可以編輯 VIP 欄位:
步驟四:設定每個 Element 的 Table settings
基本上這些設定值都很好了解,若不確定作用為何,可以隨時從管理介面變更設定值,嘗試一下就知道每個設定的意義了,如下圖:
步驟五:若需要驗證欄位內容,則進行 Validations 設定(以驗證空白為例)
若使用者沒有輸入資料,會看到以下錯誤訊息,非常明確:
Fabrik 內建了很多的 validation rules,一看就知道怎麼用:
步驟六:根據需要新增各種不同類型的輸入欄位
Field:也就是文字方塊 (textbox)
drop down:下拉式選單
text area:文字區域 (適合輸入大量文字)
最後製作出來的 Form 大概就長得像下面這樣:
而呈現使用者在以上的 Form 中輸入的資料的 Table,大概長得像下面這樣:
以上就是 Fabrik 擴充套件的用法介紹,基本上都很簡單,所有的設定都存在 DB,想要深入了解網站運作方式的話可以打開 phpMyAdmin 來查看 DB 中的資料,網站原始碼 (php) 也可以好好研讀 (這就是 open source 的好處呀!)。
下一篇再來談談我對 Joomla & Fabrik 套件做的一些客製化,以及目前遇到的問題和解法。
本系列其他文章:
2 則留言:
你好~~~請問Community Builder fabrik plugin 。這個套件有研究過嗎?!?! 我try 了很久,在community builder 下plugin這個套件後,1.首先我的CB個人資料顯示上方顯示event handler not recognized (但是Tab ,依然有fabrik) 2.按照他官網附件上在parameter上打上{fabrik view=table id=1} 完全不會run。 困擾我很久><..
Hi Jz,
我沒有用過 Community Builder fabrik plugin 說 ... 如果有空的話會再試試看 ^^; 我之前沒有用過 Joomla,目前除了用到 Fabrik 套件,還有做了一些小小的修改以外,其他的功能都不是很熟~
張貼留言