在TP中,我們可以用下面兩種方法去創建一個數據表的映射對象(我暫時用到的)
第一種:$Test = D('Test')
第二種:$Test = new Model('Test')
雖然這兩種都可以對數據進行select,insert,delete,udpate操作,在數據驗證上有很大的不同,
我們來看看效果,先創建一個 TestModel
復制代碼 代碼如下:
class TestModel extends Model{
protected $_validate = array{
array('title','require','請輸入標題',1),
array('content','require','請輸入內容',1),
}
}
創建一個TestAction
復制代碼 代碼如下:
class TestAction extends Action{
public function Dtest(){
$test = D('Test'); //第一種情況
$test = new Model('Test'); //第二種情況
if($test->Create()){
$test->Add();
}else{
$test->getError();
}
}
}
在運行的時候,大家會發現,用第一種方式實例一個模型就會有數據檢查功能,如果 title 沒有填寫的話就會提示 “請輸入標題” (這個是tp提供的一個自動驗證功能,當然也需要在相應的model中定義好驗證條件);如果用第二種就沒有了·····