(一)加载css,js等样式文件
这里写图片描述
如果想自己设置设置路径:index/config.php中view_replace_str=>[“IMAGE“=>”/static/images”]这里写图片描述
(二)找出公共部分
1)在view中设置public文件夹,用于存储公共样式**public文件
2)Header.html | footer.html | navbar.html | sidenav.html | setting.html
3)在需要使用的文件中引入方法(自动定义到了view文件夹)
a.{include file=”public/header” title=’首页’}传递参数这里写图片描述
b.在引用模板header.html中语句[title]这里写图片描述
(三)部门操作(增删改查)
1)创建部门的控制器,视图文件
index/controller中创建Department.php文件,自定义index函数,用于显示首页
view创建department文件夹,创建index.html显示首页
2)创建部门控制器Department.php

namespace app\index\contoller;
use think\Controller;
class Department extends Controller{
    //显示部门首页
    //从数据库中读取数据,渲染到首页上(如果想使用分页符)
    public function index(){
        $lists=Db::table('depart')->select();
        $this->assign('lists',$lists);
        return view();--->意思是在view/department中生成index.html文件
    }
    //使用分页符的操作
    public function index(){
        $lists=Db::table('depart').pagination(2);//2表示页面显示的个数
        $this->assign('lists',$lists);
        return view();
    }
    //在index.html进行数据渲染,使用foreach循环
    {foreach $lists  as $item}
        {$item.name}
    {/foreach}
    //使用分页符式,在最后使用
        {$lists->render()}//(不是使用$Item)
}
            ```

渲染页面

3)部门添加操作
1.url路径设置,在模板中url路径–>{:url(‘控制器名/方法名’)}
这里写图片描述
相应的在Department控制器中就还有add函数这里写图片描述用于显示部门添加页面;return view()–>在view/department文件中有一个名为add.html文件新增部门首页
注意点:1)使用form表单提交,要有name和value属性用于传值,
2)action用于url路径设置
3)单选框部分:设置name和value(为不同的值,以便区分)这里写图片描述单选框
4)save处理添加数据
1)获得用户输入的值

public function save(){
    $param=input('post.');
    }
2)进行表单验证(重要的一步)
    步骤:1)在index文件夹下创建validate文件夹,在内创建Depart.php文件用于定义规则和信息
namespace app\index\validate;
use think\Validate;
class Depart extends Validate{
    //定制规则
    protected $rule=[
        "name"=>"require|max:10",
        "status"=>"require";
                ]
//定制返回信息
    protected $message=[
            "name.require"=>'部门名称不能为空',
            "name.max"=>"部门名称不能超过10个字符",
            'status.require'=>'部门状态不能为空'
                ]
    }
        2)在save方法中调用
            1)引入Loader类
    use  think\Loader;
            2)调用Loader的validate静态方法,传入自定义的验证类,调用check方法
        $validate=Loader::validate('Depart');//depart是自己定义的
        $info=$validate->check($param);//调用check方法对用户输入的数据进行验证,返回值的布尔类型
            3)对结果进行判断,错误返回message信息,没有错误,数据库添加数据
    if(!$info){
        $this->error($validate->getError());
    }
            4)数据库添加数据,结果返回受影响的行数
use  think\Db;
$result=Db::table('depart')->insert($param);
    if($result===false){
        $this->error('添加数据失败');
    }else{
        //重定向到部门首页,利用函数调用
        $this->success('添加数据成功','Department/index');
    }

这里写图片描述save方法
5)修改部门数据步骤
1)url地址设置并传参:{:url('Department/edit',array('id'=>$info['id']))}//显示修改页面
修改并传参
2)在控制器中书写edit方法用于显示修改页面
1).获取参数id,
2)根据id在数据库中查找
3)渲染修改页面

 public function edit(){
    $id=input('id');
    $data=Db::table('depart')->find($id);
    $this->assign('data',$data);
    return view();

 }

在edit.html页面中接受数据并进行模板渲染
{$data.name};
模板渲染
if条件语句:如果添加是状态等于1,输出checked

{if condition="$info['status'] eq 1"}checked{/if}

修改页面提交数据 :1)form表单提交 —>有name值
2)修改时根据id对数据库中数据进行修改,所以要传递id值

<input type='hidden' name='id' value='$info['id']'>//用于传递id数据

这里写图片描述
3)在Department控制器中创建modify函数,用于处理修改操作

public function modify(){
    1)接收用户输入的数据,因为id是隐藏域,所以也会接收到
    $param=input('post');
    2)数据库修改数据,返回受影响的行数
    $resule=Db::table('depart')->update($param);
    if($result===false){
        $this->error('修改数据失败')
    }else{
        $this->success('添加数据成功','Department/index');
    }

}

6)删除部门操作步骤

public function delete(){
    $id=input('id');
    $result=Db::table('deaprt')->delete($id);
    if($result){
        $this->error('删除数据失败')
    }else{
        $this->success('删除数据成功','Department/index');
    }
}
Logo

快速构建 Web 应用程序

更多推荐