model层为了项目更好服用!!!
配置链接数据库:
appliction>database.php
type
hostname
database
username
password
hostport // 默认3306端口
prefix // 数据库前缀
声明model层:
项目目录地址:common>modle>Category
<?php
namespace app\common\model;
use think\Model;
class Category extends Model{
protected $autoWriteTimestamp = true; // 自动化更新数据库create_time和update_time时间戳
// 添加数据到数据库
public function add($data){
$data['status'] = 1;
// $data['create_time'] = time();
return $this->save($data);
}
// 查询数据库
public function getNormalFirstCategory(){
$data = [
'status' => 1,
'parent_id' => 0
];
$order =>[
'id' => 'desc'
]
return this->where($data)->order($order)->select()
}
}
控制层调用model层方法:
// 公共声明
private $obj;
public function _initialize() {
$this->obj = model("Category");
}
public function add(){
// 调用上述model层声明的查询方法
$categorys = model("Category")->getNormalFirstCategroy();
// 将查询数据传递给模板
return $this->fecth('',[
'categorys'=>$categorys
]);
}
public fuction save(){
$data = input('post.');
$data['status'] = 10;
$validate = validate('Category');
if(!$validate->scene('add')->check($data)){
$this->error($validate->getError())
}
// 把$data 提交model层
// 单独声明
$res = model('Category') -> add($data) // 实例化model层,调用add方法
}
模板层
项目目录地址:
application>view>add.html
<select name="parent_id" class="select">
<option value="0">一级分类</option>
{volist name="categorys" id="vo"}
<option value="{$vo.id}">--{$vo.name}</option>
{/volist}
</select>
网友评论