tp5 商城商品模型删除
1:控制器代码
public function delete($id)
{
//验证id是否正确 $id
if (!intval($id)) {
return getJsonData(10010, '参数不正确');
}
//删除操作
//检测商品是否存在
$where = [
'type_id' => $id
];
$goodsInfo = \app\admin\model\Goods::getGoodsInfo($where);
if (!empty($goodsInfo)) {
return getJsonData(10010, '商品正在使用不能删除');
}
// 启动事务
Db::startTrans();
try { //try catch php 捕捉异常
//删除商品模型数据
typeModel::deleteTypeInfo($id);
//删除商品属性
Attribute::deleteAttrInfo($where);
//删除商品规格
Spec::deleteSpecInfo($where);
//删除商品属性
SpecValue::deleteSpecValueInfo($where); // 提交事务
Db::commit();
return getJsonData(200, '删除成功');
} catch (Exception $e) {
// 回滚事务
Db::rollback();
return getJsonData(100010, $e->getMessage());
}
}
2:商品模型数据
//删除商品模型
public static function deleteTypeInfo($id)
{
return self::destroy($id);
}
3:删除商品属性
?php namespace app\common\model; use think\Model;
use traits\model\SoftDelete; class Attribute extends Model
{
//
use SoftDelete; //删除商品属性
public static function deleteAttrInfo($id)
{
return self::destroy($id);
}
}
4:删除商品规格
<?php namespace app\common\model; use think\Model;
use traits\model\SoftDelete; class Spec extends Model
{
use SoftDelete; protected $table = 'pyg_spec'; //定义商品模型和商品规格关系 一对多
public function specValues()
{
return $this->hasMany('SpecValue', 'spec_id','id');
} //删除商品规格
public static function deleteSpecInfo($id)
{
return self::destroy($id);
}
}
5,删除商品规格值:
<?php namespace app\common\model; use think\Model;
use traits\model\SoftDelete; class SpecValue extends Model
{
//
use SoftDelete; //删除商品规格值
public static function deleteSpecValueInfo($id)
{
return self::destroy($id);
}
}

tp5 商城商品模型删除的更多相关文章
- tp5 商品模型的添加展示
路由 //商品模型展示的路由 Route::get('type','/pyg/good/listType'); //将type_id传送至/pyg/good/addType的路由 Route::get ...
- tp5 商城模型id详情接口
1:创建模型 2:定义关联模型 <?php namespace app\common\model; use think\Model; use traits\model\SoftDelete; c ...
- YY一下淘宝商品模型
淘宝的电商产品种类非常丰富,必然得力于其商品模型的高度通用性和扩展性. 下面我将亲自操作淘宝商品的发布过程,结合网上其他博客对淘宝网商品库的分析,简单谈谈我的理解. 注:下面不特殊说明,各个表除主键外 ...
- 商品模型:SPU、商品、SKU概念模型设计
商品系统是电商SaaS.新零售SaaS最基础.最核心的系统之一.商品系统几乎需要支撑所有业务系统,商品详情.购物车.订单.履约.结算.售后.库存.供应链等,都需要依赖商品系统的能力.为了保障业务的稳定 ...
- 电商系统中的商品模型的分析与设计—续
前言 在<电商系统中的商品模型的分析与设计>中,对电商系统商品模型有一个粗浅的描述,后来有博友对货品和商品的区别以及属性有一些疑问.我也对此做一些研究,再次简单的对商品模型做一个介 ...
- Scrapy实战篇(八)之Scrapy对接selenium爬取京东商城商品数据
本篇目标:我们以爬取京东商城商品数据为例,展示Scrapy框架对接selenium爬取京东商城商品数据. 背景: 京东商城页面为js动态加载页面,直接使用request请求,无法得到我们想要的商品数据 ...
- osg fbx模型删除模型中的某几个节点,实现编辑模型的功能
fbx model element count:80 三维视图: {三维} 4294967295 osg::MatrixTransform1 基本墙 wall_240 [361750] 4294967 ...
- Python网络爬虫——京东商城商品列表
Python_网络爬虫--京东商城商品列表 最近在拓展自己知识面,想学习一下其他的编程语言,处于多方的考虑最终选择了Python,Python从发布之初就以庞大的用户集群占据了编程的一席之地,pyth ...
- 实例讲解TP5中关联模型
https://blog.csdn.net/github_37512301/article/details/75675054 一.关联模型在关系型数据库中,表之间有一对一.一对多.多对多的关系.在 T ...
随机推荐
- 读 Go 源码,可以试试这个工具
原文链接: 读 Go 源码,可以试试这个工具 编程发展至今,从面向过程到面向对象,再到现在的面向框架.写代码变成了一件越来越容易的事情. 学习基础语法,看看框架文档,几天时间搞出一个小项目并不是一件很 ...
- Android状态栏微技巧,带你真正理解沉浸式模式【转】
感谢! 本文转自大佬郭霖:http://blog.csdn.net/guolin_blog/article/details/51763825 转载请注明出处:http://blog.csdn.net/ ...
- PHP操作Mysql疑问?
1.Mysql控制台乱码 set character_set_results = 'utf8';
- 实例15_C语言绘制万年历
实例说明:
- K8是—— yaml资源清单
K8是-- yaml资源清单 一.yaml文件详解 1.Kubernetes支持YAML和JSON格式管理资源对象2.JSON格式:主要用于api接口之间消息的传递3.YAML格式:用于配置和管理,Y ...
- Java多线程经典案例分享
汇总 案例一 案例二 案例三 案例四 案例五 案例六 案例七 案例一 实现一个容器,提供两个方法,add(),count() 写两个线程,线程1添加10个元素到容器中,线程2实现监控元素的个数,当个数 ...
- MATLAB基础学习(2)
function result=mysum(a,b)%创建函数以及外部接口 s=0; for i=a:b s=s+i; end result=s; disp(s); end Matlab中ones() ...
- Postman接口测试脚本编写规范
Postman接口测试脚本编写规范 1.前言 2.名词解释 3.接口测试脚本规范 3.1接口测试脚本编写的规范 3.2 Postman使用规范 4.单个接口测试 5.整个流程的开发过程 1.前言 本规 ...
- 利用Tensorboard可视化模型、数据和训练过程
在60分钟闪电战中,我们像你展示了如何加载数据,通过为我们定义的nn.Module的子类的model提供数据,在训练集上训练模型,在测试集上测试模型.为了了解发生了什么,我们在模型训练时打印了一些统计 ...
- Solution -「CF 793G」Oleg and Chess
\(\mathcal{Description}\) Link. 给一个 \(n\times n\) 的棋盘,其中 \(q\) 个互不重叠的子矩阵被禁止放棋.问最多能放多少个互不能攻击的车. ...