import django pwd=os.path.dirname(os.path.realpath(__file__)) sys.path.append(pwd+"../") #django初始化 os.environ.setdefault("DJANGO_SETTINGS_MODULE", "Shop.settings") django.setup() from goods.models import Goods,GoodsCategory,GoodsImage#必须在django初始化之后才能引入 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.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_obj=GoodsImage() goods_image_obj.goods=goods goods_image_obj.image=goods_image goods_image_obj.save()
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "daydayfresh.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()
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()
from goods.models import Goods, GoodsCategory, GoodsImage from db_tools.data.product_data import raw_data for goods_detail in raw_data: goods = Goods() goods.name = goods_detail['name'] goods.market_price = float(goods_detail['market_price'].replace( '¥', '').replace('元', '')) goods.shop_price = float(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['desc'] if goods_detail[ 'desc'] is not None else '' goods.goods_front_image = goods_detail['images'][0] if goods_detail[ 'images'] is not None 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_iamge_instance = GoodsImage() goods_iamge_instance.image = goods_image goods_iamge_instance.goods = goods goods_iamge_instance.save() print('Goods data imported successfully')
goods.name = goods_detail["name"] # replace("¥", "")把¥替换成 "" goods.market_price = float( int(goods_detail["market_price"].replace("¥", "").replace("元", ""))) goods.shop_price = float( int(goods_detail["sale_price"].replace("¥", "").replace("元", ""))) # 如果内容不为None传递给goods_brief ,否则: else(为None) 把None转换为"",传递给goods_brief 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 "" # 取第一张作为封面图 [如果有就传递值,如果没有(else)传递""。image在数据库默认为str ] goods.goods_front_image = goods_detail["images"][0] if goods_detail[ "images"] else "" # 取第三级分类,作为商品的分类 category_name = goods_detail["categorys"][-1] # 选用filter不用get。因为filter没有匹配的返回空字符串,不会抛异常,get会抛异常(只能传外键给goods.category,直接传str会出错) category = GoodsCategory.objects.filter(name=category_name) print(category[0]) # category是一个对象,goods.category需要字符串,category[0]返回对象的字符串 if category: goods.category = category[0] # 当前数据的商品的分类 goods.save() # 商品的图片 for good_image in goods_detail["images"]: goods_image_instance = GoodsImage() goods_image_instance.image = good_image goods_image_instance.goods = goods # 上面有遍历每一个goods goods_image_instance.save()
''' if __name__ == "__main__": from goods.models import Goods, GoodsCategory, GoodsImage from db_tools.data.product_data import row_data for g in row_data: g_instance = Goods() g_instance.name = g['name'] g_instance.market_price = float( int(g["sale_price"].replace("¥", "").replace("元", ""))) g_instance.shop_price = float( int(g["sale_price"].replace("¥", "").replace("元", ""))) g_instance.goods_brief = g['desc'] if g['desc'] is not None else '' g_instance.goods_desc = g['goods_desc'] if g[ 'goods_desc'] is not None else '' g_instance.goods_front_image = g['images'][0] if g['images'] else '' # 类别 category = GoodsCategory.objects.filter(name=g['categorys'][-1]) if category: g_instance.category = category[0] g_instance.save() # goodsimage for img in g['images']: good_img_instane = GoodsImage() good_img_instane.goods = g_instance good_img_instane.image = img good_img_instane.save()