作业:ProductPic相关学习内容

原创 2018-12-02 23:41:59 334
摘要:第一步,是数据表的建立 product_pic第二步是建立ProductPicModel.php<?php namespace app\admin\model; use \think\Model; class ProductModel extends Model {     protected&nbs

第一步,是数据表的建立 product_pic

product_pic.PNG


第二步是建立ProductPicModel.php

<?php
namespace app\admin\model;
use \think\Model;

class ProductModel extends Model
{
    protected $table = 'product';

    protected $pk = 'id';
}
?>

第三步是Controller中的ProductPic.php

这里解释一下为什么要用use app\admin\model\ProductModel; 这是因为在add()方法中要调用Product中的数据信息

$productpics=ProductModel::all();


<?php
namespace app\admin\controller;
use app\admin\controller\Common;
use app\admin\model\ProductModel;
use app\admin\model\ProductPicModel;
use think\facade\Request;
use think\facade\Session;
class ProductPic extends Common{
	public function index(){
		$ProductPic=new ProductPicModel();
		$productpics=$ProductPic->order('id','desc')->paginate(6);
		$this->assign('productpics',$productpics);
		
		return $this->fetch();
	}
	
	public function add(){
		$productpics=ProductModel::all();
		$this->assign('productpics',$productpics);
		return $this->fetch();
	}
	
	public function upload(){
		$file=Request::file('file');
		if($info=$file->validate(['ext'=>'jpeg,jpg,gif,png'])->move('upload')){
			$fileName='/upload/'.$info->getSaveName();
			return json([1,'上传成功!','data'=>$fileName]);
		}else{
			return $file->getError();
		}
	}
	
	public function doAdd(){
		$data=Request::param();
		$data['time']=time();
		$data['username']=Session::get('username');
		$productPic=new ProductPicModel();
		if($productPic->save($data)){
			return ['res'=>1,'msg'=>'添加成功'];
		}else{
			return ['res'=>0,'msg'=>'添加失败'];
		}
	}
	
	public function del(){
		$productPicId=Request::param('id');
		$productPic=new ProductPicModel();
		if($productPic->destroy($productPicId)){
			return ['res'=>1,'msg'=>'删除成功'];
		}
	}
	
	
	
	
}
?>


在HTML相关页面中index.html

 {volist name="productpics" id="productpic"}
        <tr>
            <td>{$productpic.id}</td>
            <td>{:GetProTitle($productpic.product_id)}</td>
            <td><img src="{$productpic.pic}"></td>
            <td>{$productpic.username}</td>
            <td>{$productpic.time|date="Y-m-d"}</td>
            <td class="td-manage">
                <a title="删除" onclick="member_del(this,'{$productpic.id}')" href="javascript:;">
                    <i class="layui-icon">&#xe640;</i>
                </a>
            </td>
        </tr>
        {/volist}
  function member_del(obj,id){
        layer.confirm('确认要删除吗?',function(index){
            //发异步删除数据
            $.get('{:url(\'del\')}','id='+id,function (data) {
                if (data.res==1){
                    $(obj).parents("tr").remove();
                    layer.msg('已删除!',{icon:1,time:1000});
                }
            })
        });
    }

add.html

主要是$.post(url,value,function(data){})

     $.post('{:url(\'doAdd\')}',{
                'product_id':$('#product_id').val(),
                'pic':$('#pic').val()
            },function (data) {
                if (data.res == 1){
                    layer.alert(data.msg, {icon: 6},function () {
                        // 获得frame索引
                        var index = parent.layer.getFrameIndex(window.name);
                        //关闭当前frame
                        parent.layer.close(index);
                    });
                }else{
                    layer.alert(data.msg, {icon: 6},function () {
                        // 获得frame索引
                        var index = parent.layer.getFrameIndex(window.name);
                        //关闭当前frame
                        parent.layer.close(index);
                    });
                }
            })

picadd.PNG

picindex.PNG

picadd2.PNG

批改老师:天蓬老师批改时间:2018-12-03 13:43:50
老师总结:整体还好,只是自定义函数的命名不规范,建议用连接线, 详情请参考官方开发手册

发布手记

热门词条