会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 132482个问题

image.png


商品详情名称,用了老师的代码,还是出现重复了,没有达到去重的效果。


loaddata.py

# coding=utf-8
from goodsapp.models import *
from django.db.transaction import atomic  # 事务


@atomic
def test_model():
    with open('utils/jiukuaijiu.json') as fr:
        import json
        datas = json.loads(fr.read())
        for data in datas:

            cate = Category.objects.create(cname=data['category'])

            _goods = data['goods']

            for goods in _goods:
                good = Goods.objects.create(gname=goods['goodsname'], gdesc=goods['goods_desc'],
                                            price=goods['goods_price'], oldprice=goods['goods_oldprice'],
                                            category=cate)
                sizes = []
                for _size in goods['sizes']:
                    if Size.objects.filter(sname=_size[0]).count() == 1:
                        size = Size.objects.get(sname=_size[0])
                    else:
                        size = Size.objects.create(sname=_size[0])
                    sizes.append(size)

                colors = []
                for _color in goods['colors']:
                    color = Color.objects.create(colorname=_color[0], colorurl=_color[1])
                    colors.append(color)

                for _spec in goods['specs']:
                    try:
                        goodsdetails = GoodsDetailName.objects.get(gdname=_spec[0])
                    except GoodsDetailName.DoesNotExist:
                        goodsdetails = GoodsDetailName.objects.create(gdname=_spec[0])

                    for img in _spec[1]:
                        GoodsDetail.objects.create(goods=good, detailname=goodsdetails, gdurl=img)

                for c in colors:
                    for s in sizes:
                        Inventory.objects.create(count=100, goods=good, color=c, size=s)


def deleteall():
    Category.objects.filter().delete()
    Color.objects.filter().delete()
    Size.objects.filter().delete()

image.png

Python 全系列/下架-第十二阶段:Python_大型电商项目(5天后下架)/Django项目阶段-电商项目(旧) 30018楼
Python 全系列/第二阶段:Python 深入与提高/模块 30022楼
Python 全系列/第十五阶段:Python 爬虫开发/爬虫基础(旧) 30025楼
Python 全系列/第二阶段:Python 深入与提高/GUI编程(隐藏) 30026楼
Python 全系列/第十五阶段:Python 爬虫开发/爬虫基础(旧) 30029楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园
网站维护:百战汇智(北京)科技有限公司
京公网安备 11011402011233号    京ICP备18060230号-3    营业执照    经营许可证:京B2-20212637