模型分層
ThinkPHP支持模型的分層 ,除了Model層之外,我們可以項(xiàng)目的需要設(shè)計和創(chuàng)建其他的模型層。
通常情況下,不同的分層模型仍然是繼承系統(tǒng)的\think\Model
類或其子類,所以,其基本操作和Model
類的操作是一致的。
例如在index
模塊的設(shè)計中需要區(qū)分?jǐn)?shù)據(jù)層、邏輯層、服務(wù)層等不同的模型層,我們可以在模塊目錄下面創(chuàng)建model
、logic
和service
目錄,把對用戶表的所有模型操作分成三層:
- 數(shù)據(jù)層:app\index\model\User 用于定義數(shù)據(jù)相關(guān)的自動驗(yàn)證和自動完成和數(shù)據(jù)存取接口
- 邏輯層:app\index\logic\User 用于定義用戶相關(guān)的業(yè)務(wù)邏輯
- 服務(wù)層:app\index\service\User 用于定義用戶相關(guān)的服務(wù)接口等
三個模型層的定義如下:
app\index\model\User.php
namespace app\index\model;
use think\Model;
class User extends Model
{
}
實(shí)例化方法:\think\Loader::model('User')
Logic類:app\index\logic\User.php
namespace app\index\logic;
use think\Model;
class User extends Model
{
}
實(shí)例化方法:\think\Loader::model('User','logic');
Service類:app\index\service\User.php
namespace app\index\service;
use think\Model;
class User extends Model
{
}
實(shí)例化方法:\think\Loader::model('User','service');
文檔最后更新時間:2018-04-26 10:08:09
未解決你的問題?請到「問答社區(qū)」反饋你遇到的問題