上传的图片资源目录配置:
settings.py:
MEDIA_URL = "/media/"
MEDIA_ROOT = os.path.join(BASE_DIR, "media")
urls.py:
# media上传的图片
urlpatterns = [
re_path(r'^media/(?P<path>.*)$', serve, {"document_root": MEDIA_ROOT})
]
导入商品种类数据
db_tools/import_category_data.py: 编写脚本导入数据
from db_tools.data.category_data import row_data:db_tools/data/category_data.py 下row_data为数组
__author__ = "westbrook-ding"
__date__ = "2018/10/26 0026 18:53"
# 单独使用django的model
import os
import sys
# os.path.realpath(__file__):获取当前脚本文件的绝对路径
# os.path.dirname(path):文件所在的目录
pwd = os.path.dirname(os.path.realpath(__file__))
# 添加模块搜索目录 djangoShop
sys.path.append(pwd+"../")
# 设置django配置目录 默认会在djangoShop下找
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'djangoShop.settings')
import django
django.setup()
# 引入商品种类class
from goods.models import GoodsCategory
# 引入商品种类数组
from db_tools.data.category_data import row_data
# 保存数据到数据库中
for lev1_cat in row_data:
lev1_instance = GoodsCategory()
lev1_instance.code = lev1_cat['code']
lev1_instance.name = lev1_cat['name']
lev1_instance.category_type = 1
lev1_instance.save()
for lev2_cat in lev1_cat["sub_categorys"]:
lev2_instance = GoodsCategory()
lev2_instance.code = lev2_cat['code']
lev2_instance.name = lev2_cat['name']
lev2_instance.category_type = 2
lev2_instance.parent_category = lev1_instance
lev2_instance.save()
for lev3_cat in lev2_cat["sub_categorys"]:
lev3_instance = GoodsCategory()
lev3_instance.code = lev3_cat['code']
lev3_instance.name = lev3_cat['name']
lev3_instance.category_type = 3
lev3_instance.parent_category = lev2_instance
lev3_instance.save()
导入商品数据
db_tools/import_good_data.py: 编写脚本导入数据
from db_tools.data.product_data import row_data:db_tools/data/product_data.py 下row_data为数组
__author__ = "westbrook-ding"
__date__ = "2018/10/26 0026 18:53"
# 单独使用django的model
import os
import sys
# os.path.realpath(__file__):获取当前脚本文件的绝对路径
# os.path.dirname(path):文件所在的目录
pwd = os.path.dirname(os.path.realpath(__file__))
# 添加模块搜索目录 djangoShop
sys.path.append(pwd+"../")
# 设置django配置目录 默认会在djangoShop下找
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'djangoShop.settings')
import django
django.setup()
# 引入商品class
from goods.models import Goods, GoodsCategory, GoodsImage
# 引入商品数据数组
from db_tools.data.product_data import row_data
# 保存商品数据
for good_cat in row_data:
good = Goods()
good.name = good_cat["name"]
good.goods_brief = good_cat["desc"] if good_cat["desc"] is not None else ""
good.goods_desc = good_cat["goods_desc"] if good_cat["goods_desc"] is not None else ""
good.market_price = float(int(good_cat["market_price"].replace("¥", '').replace("元", "")))
good.shop_price = float(int(good_cat["sale_price"].replace("¥", '').replace("元", "")))
good.goods_front_image = good_cat["images"][0]
category_name = good_cat["categorys"][-1]
category = GoodsCategory.objects.filter(name=category_name)
if category is not None:
good.category = category[0]
good.save()