1. 商品种类的无限极分类

    $data=db('goods_type')->field(['*','concat(path,",",id)'=>'paths'])->order('paths')->select();
    foreach($data as $k=>$v){
    $data[$k]['name']=str_repeat('|--',$v['level']).$v['name'];
    }

     

  2. ThinkPHP 5 中的公共函数调用问题:整个应用的公共函数放在\application\common.php中,某个模块的应用可以放在\application\模块名\common.php
  3. 无限分类之使用ajax获取分类数据
    1、product控制器中的方法
    public function product_category_ajax(){
    $data=db('goods_type')->field('id,pid,name')->select();
    echo json_encode($data); } 2、product_category模板中添加js代码
    var zNodes;
    $.ajax({
    url:"{:url('product_category_ajax')}",
    type:'get',
    dataType:'json',
    async: false,
    success:function(data){
    zNodes=data;
    console.log(data);
    }
    });

      效果如图:

  4. 无限分类之使用ajax获取分类数据

     //1、product控制器中的product_category_del方法
    public function product_category_del(){
    $id=$_GET['id'];
    $p_data=db('goods_type')->where('pid',$id)->find();
    if($p_data){
    $msg='分类下面还有子分类,不允许删除!';
    echo json_encode($msg);
    }else{
    if(db('goods_type')->delete($id)){
    echo 1;
    }else{
    $msg='分类删除失败!';
    echo json_encode($msg);
    }
    }
    }
    2、product_category模板中添加js代码
    callback: {
      beforeClick: function(treeId, treeNode) {
       $.ajax({
                 url:"{:url('product_category_del')}",
                 type:'get',
                 data:{id:treeNode.id},
                 dataType:'json',
                 async: false,
                 success:function(data){
                  if(data==1){
                   alert('分类删除成功!');
                   location.href="product_category";
                  }else{
                   alert(data);
                  }
                 } 
                });
      }
     }

      

    说明:
    视频教程的文件上传插件是Bootstrap fileinput,原模板文件用的是百度开发的WebUploder,但无论是哪种,我都弄不懂后台怎么获取上传的文件,一怒之下不玩了,有心情再研究吧

李忠益TP5商城项目笔记(待完成)的更多相关文章

  1. Django商城项目笔记No.12用户部分-QQ登录2获取QQ用户openid

    Django商城项目笔记No.12用户部分-QQ登录2获取QQ用户openid 上一步获取QQ登录网址之后,测试登录之后本该跳转到这个界面 但是报错了: 新建oauth_callback.html & ...

  2. Django商城项目笔记No.11用户部分-QQ登录1获取QQ登录网址

    Django商城项目笔记No.11用户部分-QQ登录 QQ登录,亦即我们所说的第三方登录,是指用户可以不在本项目中输入密码,而直接通过第三方的验证,成功登录本项目. 若想实现QQ登录,需要成为QQ互联 ...

  3. Django商城项目笔记No.10用户部分-登录接口

    Django商城项目笔记No.10用户部分-登录接口 添加url路由 接下来第二步,增加返回内容: 增加结果如下: 配置:上边的方法定义了返回的内容都有哪些,那这个方法jwt还不知道,需要配置: 修改 ...

  4. Django商城项目笔记No.9用户部分-注册接口签发JWTtoken

    Django商城项目笔记No.9用户部分-注册接口签发JWTtoken 我们在验证完用户的身份后(检验用户名和密码),需要向用户签发JWT,在需要用到用户身份信息的时候,还需核验用户的JWT. 关于签 ...

  5. Django商城项目笔记No.8用户部分-注册接口实现

    Django商城项目笔记No.8用户部分-注册接口实现 users的view.py中增加如下代码 class RegisterUserView(CreateAPIView): "" ...

  6. Django商城项目笔记No.7用户部分-注册接口-判断用户名和手机号是否存在

    Django商城项目笔记No.7用户部分-注册接口-判断用户名和手机号是否存在 判断用户名是否存在 后端视图代码实现,在users/view.py里编写如下代码 class UsernameCount ...

  7. Django商城项目笔记No.6用户部分-注册接口-短信验证码实现celery异步

    Django商城项目笔记No.4用户部分-注册接口-短信验证码实现celery异步 接上一篇,如何解决前后端请求跨域问题? 首先想一下,为什么图片验证码请求的也是后端的api.meiduo.site: ...

  8. Django商城项目笔记No.5用户部分-注册接口-短信验证码

    Django商城项目笔记No.4用户部分-注册接口-短信验证码 短信验证码也保存在redis里(sms_code_15101234567) 在views中新增SMSCodeView类视图,并且写出步骤 ...

  9. Django商城项目笔记No.4用户部分-注册接口-图片验证码

    Django商城项目笔记No.4用户部分-注册接口-图片验证码 1.首先分析注册业务接口 1.1.分析可得,至少这么几个接口 图片验证码 短信验证码 用户名是否存在 手机号是否存在 整体注册接口 图片 ...

随机推荐

  1. rjs 合并压缩完 js 后 js 不压缩的问题

    线下用 requirejs 开发完后,代码上线前要用 rjs 将多个有依赖关系的 js 文件压成一个,然后某天居然发现压成一个的 js 文件,没有压缩!!!几万行的 js!!! 很显然,是 uglif ...

  2. React-Native 学习笔记-Android开发平台-开发环境搭建

    详细步骤请查看官网对应文档,BUT,有些注意事项请注意! 1,优先安装Node.js,因为后面可以使用npm安装软件, 2,注意不要使用CNPM!!!!!!!!! 3,Android Studio 请 ...

  3. centos6.x升级protobuf操作流程.

    1.首先卸载protobuf,使用命令如下: sudo yum remove protobuf 2.下载protobuf源,依据自己的需要下载: 2.1下载地址:https://github.com/ ...

  4. loadrunner-获取返回值和自定义参数(参数运算)

    实例:手机端操作,A新增了一条事件(返回结果:事件id,例如:1), A这时需要获取新增产生的事件id,并作为参数进行传递,才能将这条事件上报给B(返回结果:事件id不变,步骤id等于事件id加1), ...

  5. Codeforces 842B Gleb And Pizza【几何,水】

    B. Gleb And Pizza time limit per test:2 seconds memory limit per test:256 megabytes input:standard i ...

  6. python爬取拉勾网职位数据

    今天写的这篇文章是关于python爬虫简单的一个使用,选取的爬取对象是著名的招聘网站--拉钩网,由于和大家的职业息息相关,所以爬取拉钩的数据进行分析,对于职业规划和求职时的信息提供有很大的帮助. 完成 ...

  7. 获取屏幕宽高度与可视区域宽高度(availWidth、clientWidth、width、innerWidth)

    经常会遇到需要获取屏幕宽度.高度,可视区域宽度.高度等问题,也就常跟这几个打交道,一不小心,还真爱弄混淆了. 先来列举下这几个吧: screen.availHeight.screen.availWid ...

  8. java常量池詳解

    一.相关概念 什么是常量用final修饰的成员变量表示常量,值一旦给定就无法改变!final修饰的变量有三种:静态变量.实例变量和局部变量,分别表示三种类型的常量. Class文件中的常量池在Clas ...

  9. 跟我一起读postgresql源码(十三)——Executor(查询执行模块之——Join节点(上))

    Join节点 JOIN节点有以下三种: T_NestLoopState, T_MergeJoinState, T_HashJoinState, 连接类型节点对应于关系代数中的连接操作,PostgreS ...

  10. Oracle:FOR循环语句练习

    --打印输出从1到10的正整数DECLARE v_i NUMBER(10) := 0;BEGIN LOOP v_i := v_i + 1; DBMS_OUTPUT.put_line(v_i); EXI ...