导入商品数据
来自CloudWiki
编写导入脚本
在db_tooles目录下 新建文件import_goods_data.py
import sys import os pwd = os.path.dirname(os.path.realpath(__file__)) parent_path = os.path.dirname(pwd) sys.path.append(parent_path) os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mxshop.settings") import django django.setup() from goods.models import Goods, GoodsCategory, GoodsImage from db_tools.data.product_data import row_data for goods_detail in row_data: goods = Goods() goods.name = goods_detail["name"] goods.market_price = float(int(goods_detail["market_price"].replace("¥", "").replace("元", ""))) goods.shop_price = float(int(goods_detail["sale_price"].replace("¥", "").replace("元", ""))) goods.goods_brief = goods_detail["desc"] if goods_detail["desc"] is not None else "" goods.goods_desc = goods_detail["goods_desc"] if goods_detail["goods_desc"] is not None else "" goods.goods_front_image = goods_detail["images"][0] if goods_detail["images"] else "" category_name = goods_detail["categorys"][-1] category = GoodsCategory.objects.filter(name=category_name) if category: goods.category = category[0] goods.save() for goods_image in goods_detail["images"]: goods_image_instance = GoodsImage() goods_image_instance.image = goods_image goods_image_instance.goods = goods goods_image_instance.save()
执行脚本:
python3 import_goods_data.py
验证:
显示图片
但是现在不显示图片, 如图:
mxshop/settings.py 添加:
MEDIA_URL = '/media/" MEDIA_ROOT = os.path.join(BASE_DIR,"media")
mxshop/urls.py
from django.conf.urls import url from django.contrib import admin import xadmin from mxshop.settings import MEDIA_ROOT from django.views.static import serve urlpatterns = [ url(r'^xadmin/', xadmin.site.urls), url(r'^media/(?P<path>.*)$', serve, {"document_root": MEDIA_ROOT}),