pwd = os.path.dirname(os.path.realpath(__file__)) sys.path.append(pwd + "../") os.environ.setdefault("DJANGO_SETTINGS_MODULE", "MxShop.settings") import django django.setup() from goods.models import GoodsCategory from db_tools.data.category_data import row_data import_data = row_data for data_1 in import_data: obj_1 = GoodsCategory() obj_1.name = data_1["name"] obj_1.code = data_1["code"] obj_1.category_type = 1 obj_1.save() for data_2 in data_1["sub_categorys"]: obj_2 = GoodsCategory() obj_2.name = data_2["name"] obj_2.code = data_2["code"] obj_2.category_type = 2 obj_2.parent_category = obj_1 obj_2.save() for data_3 in data_2["sub_categorys"]: obj_3 = GoodsCategory() obj_3.name = data_2["name"]
pwd = os.path.dirname(os.path.realpath(__file__)) sys.path.append(pwd + "../") os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'MxShop.settings') import django django.setup() from goods.models import GoodsCategory from db_tools.data.category_data import row_data for lev1_data in row_data: lev1_instance = GoodsCategory() lev1_instance.name = lev1_data["name"] lev1_instance.code = lev1_data["code"] lev1_instance.category_type = 1 lev1_instance.save() for lev2_data in lev1_data["sub_categorys"]: lev2_instance = GoodsCategory() lev2_instance.name = lev2_data["name"] lev2_instance.code = lev2_data["code"] lev2_instance.parent_category = lev1_instance lev2_instance.category_type = 2 lev2_instance.save() for lev3_data in lev2_data["sub_categorys"]: lev3_instance = GoodsCategory() lev3_instance.name = lev3_data["name"]
pwd = os.path.dirname(os.path.realpath(__file__)) sys.path.append(pwd+"../") os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'MxShop.settings') import django django.setup() from goods.models import GoodsCategory from db_tools.data.category_data import row_data for lvl1_cat in row_data: lvl1_instance = GoodsCategory() lvl1_instance.code = lvl1_cat["code"] lvl1_instance.name = lvl1_cat["name"] lvl1_instance.category_type = 1 lvl1_instance.save() for lvl2_cat in lvl1_cat["sub_categorys"]: lvl2_instance = GoodsCategory() lvl2_instance.code = lvl2_cat["code"] lvl2_instance.name = lvl2_cat["name"] lvl2_instance.category_type = 2 lvl2_instance.parent_category = lvl1_instance lvl2_instance.save() for lvl3_cat in lvl2_cat["sub_categorys"]: lvl3_instance = GoodsCategory() lvl3_instance.code = lvl3_cat["code"] lvl3_instance.name = lvl3_cat["name"]
#设置model运行的独立环境 #这是在manage.py文件里面的路径 os.environ.setdefault("DJANGO_SETTINGS_MODULE", "Shop.settings") import django django.setup() from goods.models import GoodsCategory from db_tools.data.category_data import row_data # all_GoodsCategory = GoodsCategory.objects.all() #把数据存入数据库中 for level1_data in row_data: level1_instance = GoodsCategory() level1_instance.name = level1_data['name'] level1_instance.code = level1_data['code'] level1_instance.category_type = 1 level1_instance.save() for level2_data in level1_data['sub_categorys']: level2_instance = GoodsCategory() level2_instance.name = level2_data['name'] level2_instance.code = level2_data['code'] level2_instance.category_type = 2 level2_instance.parent_category = level1_instance level2_instance.save() for level3_data in level2_data['sub_categorys']: level3_instance = GoodsCategory() level3_instance.name = level3_data['name']
pwd = os.path.dirname(os.path.realpath(__file__)) sys.path.append(pwd + "../") os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mxshop.settings") import django django.setup() from goods.models import GoodsCategory from db_tools.data.category_data import row_data for lev1_cat in row_data: lev1_intance = GoodsCategory() lev1_intance.code = lev1_cat["code"] lev1_intance.name = lev1_cat["name"] lev1_intance.category_type = 1 lev1_intance.save() for lev2_cat in lev1_cat["sub_categorys"]: lev2_intance = GoodsCategory() lev2_intance.code = lev2_cat["code"] lev2_intance.name = lev2_cat["name"] lev2_intance.category_type = 2 lev2_intance.parent_category = lev1_intance lev2_intance.save() for lev3_cat in lev2_cat["sub_categorys"]: lev3_intance = GoodsCategory() lev3_intance.code = lev3_cat["code"] lev3_intance.name = lev3_cat["name"]
sys.path.append(pwd+'../') os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'MxShop.settings') import django django.setup() from goods.models import GoodsCategory from db_tools.data.category_data import row_data for lev1_cat in row_data: instance1 = GoodsCategory() instance1.code = lev1_cat['code'] instance1.name = lev1_cat['name'] instance1.category_type = 1 instance1.save() for lev2_cat in lev1_cat['sub_categorys']: instance2 = GoodsCategory() instance2.code = lev2_cat['code'] instance2.name = lev2_cat['name'] instance2.category_type = 2 instance2.parent_category = instance1 instance2.save() for lev3_cat in lev2_cat['sub_categorys']: instance3 = GoodsCategory() instance3.code = lev3_cat['code'] instance3.name = lev3_cat['name']
pwd = os.path.dirname(os.path.relpath(__file__)) sys.path.append(pwd+"../") os.environ.setdefault("DJANGO_SETTINGS_MODULE","MxShop.settings") import django django.setup() from goods.models import GoodsCategory from db_tools.data.category_data import row_data #对数据遍历入库 for lev1_cat in row_data: #第一个类别 lev1_instance = GoodsCategory() #数据库的对象等于GoodsCategory lev1_instance.code = lev1_cat["code"] #实例的code等于lev1_cat中的code lev1_instance.name = lev1_cat["name"] # 实例的name等于lev1_cat中的name lev1_instance.category_type = 1 #实例的类型选择一级目录 “1” lev1_instance.save() #保存到数据库 #遍历子类 for lev2_cat in lev1_cat["sub_categorys"]: #遍历子类 lev2_instance = GoodsCategory() # 数据库的对象等于GoodsCategory lev2_instance.code = lev2_cat["code"] # 实例的code等于lev2_cat中的code lev2_instance.name = lev2_cat["name"] # 实例的name等于lev2_cat中的name lev2_instance.category_type = 2 # 实例的类型选择二级目录 “2” lev2_instance.parent_category = lev1_instance # lev2的父类是lev1 lev2_instance.save() # 保存到数据库 #遍历lev2的子类 for lev3_cat in lev2_cat["sub_categorys"]: # 遍历子类 lev3_instance = GoodsCategory() # 数据库的对象等于GoodsCategory
#导入django设置 import django django.setup() #这行代码不能卸载前面,一定要写在django.setup()的后面 from goods.models import GoodsCategory from db_tools.data.category_data import row_data print(row_data) # all_GoodsCategory = GoodsCategory.objects.all() # print(all_GoodsCategory) #一级类目的数据 for level1_data in row_data: level1_instance = GoodsCategory() level1_instance.name = level1_data["name"] level1_instance.code = level1_data["code"] level1_instance.category_type = 1#类别属于一级类目 #保存数据 level1_instance.save() #二级类目的数据 for level2_data in level1_data["sub_categorys"]: level2_instance = GoodsCategory() level2_instance.name = level2_data["name"] level2_instance.code = level2_data["code"] level2_instance.category_type = 2 # 类别属于二级类目 #这个不要忘记 level2_instance.parent_category = level1_instance # 保存数据 level2_instance.save()
sys.path.append(pwd + "../") # 当前的项目目录,加到根搜索路径 # 设计配置文件的 环境变量, 上面设置了项目根目录 os.environ.setdefault("DJANGO_SETTINGS_MODULE", "binshop.settings") import django django.setup() from goods.models import GoodsCategory from db_tools.data.category_data import row_data # 顶级类 top = GoodsCategory() top.id = 1 top.name = '顶级类' top.code = '000' top.category_type = 0 top.parent_category_id = 1 top.save() # for lev1_cat in row_data: # lev1_intance = GoodsCategory() # lev1_intance.code = lev1_cat["code"] # lev1_intance.name = lev1_cat["name"] # lev1_intance.category_type = 1 # lev1_intance.save() # # for lev2_cat in lev1_cat["sub_categorys"]: # lev2_intance = GoodsCategory() # lev2_intance.code = lev2_cat["code"]
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 GoodsCategory #必须在django初始化之后才能引入 from db_tools.data.category_data import row_data for lev1_cat in row_data: lev1_obj = GoodsCategory() lev1_obj.code = lev1_cat["code"] lev1_obj.name = lev1_cat["name"] lev1_obj.category_type = 1 lev1_obj.save() for lev2_cat in lev1_cat["sub_categorys"]: lev2_obj = GoodsCategory() lev2_obj.code = lev2_cat["code"] lev2_obj.name = lev2_cat["name"] lev2_obj.category_type = 2 lev2_obj.parent_category = lev1_obj lev2_obj.save() for lev3_cat in lev2_cat["sub_categorys"]: lev3_obj = GoodsCategory() lev3_obj.code = lev3_cat["code"] lev3_obj.name = lev3_cat["name"]
import os pwd = os.path.dirname(os.path.relpath(__file__)) sys.path.append(os.path.abspath(os.path.join(pwd, '..'))) sys.path.append(pwd) os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'Freshshop.settings') import django django.setup() from goods.models import GoodsCategory from db_tools.data import category_data for rank1_cate in category_data.row_data: goods_cate_1 = GoodsCategory() goods_cate_1.code = rank1_cate['code'] goods_cate_1.name = rank1_cate['name'] goods_cate_1.category_type = 1 goods_cate_1.save() for rank2_cate in rank1_cate['sub_categorys']: goods_cate_2 = GoodsCategory() goods_cate_2.code = rank2_cate['code'] goods_cate_2.name = rank2_cate['name'] goods_cate_2.category_type = 2 goods_cate_2.parent_category = goods_cate_1 goods_cate_2.save() for rank3_cate in rank2_cate['sub_categorys']: goods_cate_3 = GoodsCategory() goods_cate_3.code = rank3_cate['code'] goods_cate_3.name = rank3_cate['name']
import sys import os pwd = os.path.dirname(os.path.realpath(__file__)) lld = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) sys.path.append(lld) os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'ScProduct.settings') import django django.setup() from goods.models import GoodsCategory from db_tools.data.category_data import classify lev1_intance = GoodsCategory() lev1_intance.name = '饮料' lev1_intance.category_type = 1 lev1_intance.save() for class1 in classify: lev2_intance = GoodsCategory() lev2_intance.name = classify[class1][0] lev2_intance.category_type = 2 lev2_intance.parent_category = lev1_intance lev2_intance.save() for keyword in classify[class1][1]: lev3_intance = GoodsCategory() lev3_intance.name = keyword lev3_intance.category_type = 3 lev3_intance.parent_category = lev2_intance lev3_intance.save()
#导入goods/models.py/GoodsCategory类,并且实例化,存数据,--->数据库 from goods.models import GoodsCategory #实验:没有模拟pyhton正式model环境和导入django设置,请求下保存数据,是否可行---?不可行 # from users.models import VerifyCode # # verifycode = VerifyCode() # verifycode.code = "1234" # verifycode.mobile = "18601042258" # verifycode.save() #存数据,--->数据库 for item1 in row_data: instance1 = GoodsCategory() instance1.category_type = 1 #当前就是一级商品类目 instance1.name = item1["name"] #商品类别的名称 instance1.code = item1["code"] #商品类别的编码 instance1.save() #保存数据库 for item2 in item1["sub_categorys"]: instance2 = GoodsCategory() instance2.category_type = 2 # 当前就是二级商品类目 instance2.name = item2["name"] # 商品类别的名称 instance2.code = item2["code"] # 商品类别的编码 instance2.parent_category = instance1 #上级商品类目 instance2.save() #保存到数据库 for item3 in item2["sub_categorys"]: instance3 = GoodsCategory() instance3.category_type = 3 # 当前就是二级商品类目 instance3.name = item3["name"] # 商品类别的名称
import os import sys from db_tools.data.category_data import row_data from goods.models import GoodsCategory pwd = os.path.dirname(os.path.dirname(os.path.realpath(__file__))) sys.path.append(pwd) os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'MxShop.settings') django.setup() for level1 in row_data: level1_instance = GoodsCategory() level1_instance.code = level1['code'] level1_instance.name = level1['name'] level1_instance.category_type = 1 level1_instance.save() for level2 in level1['sub_categorys']: level2_instance = GoodsCategory() level2_instance.code = level2['code'] level2_instance.name = level2['name'] level2_instance.category_type = 2 level2_instance.parent_category = level1_instance level2_instance.save() for level3 in level2['sub_categorys']: level3_instance = GoodsCategory() level3_instance.code = level3['code'] level3_instance.name = level3['name']
# 第三步 将这个目录的路径添加到我们的搜寻环境当中 sys.path.append(dir_path) # 第四步 因为django会首先运行settings文件 动态设置我们的settings 文件 os.environ.setdefault("DJANGO_SETTINGS_MODULE", "gulishop.settings") # 第五步 让设置好的环境初始化生效 import django django.setup() from goods.models import GoodsCategory from db_tools.data.category_data import row_data for lev1 in row_data: cat1 = GoodsCategory() cat1.name = lev1['name'] cat1.code = lev1['code'] if lev1['code'] else '' cat1.category_type = 1 cat1.save() for lev2 in lev1['sub_categorys']: cat2 = GoodsCategory() cat2.name = lev2['name'] cat2.code = lev2['code'] if lev2['code'] else '' cat2.category_type = 2 cat2.parent_category = cat1 cat2.save() for lev3 in lev2['sub_categorys']: cat3 = GoodsCategory() cat3.name = lev3['name'] cat3.code = lev3['code'] if lev3['code'] else '' cat3.category_type = 3
# 要想单独使用django的model,必须指定一个环境变量,在manage.py或wsgi.py中找 os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'ishop.settings') import django django.setup() from goods.models import GoodsCategory from db_tools.data.category_data import row_data # 1级分类 for level1_cat in row_data: category1 = GoodsCategory() category1.name_en = level1_cat["code"] category1.name = level1_cat["name"] category1.category_level = 1 category1.save() # 二级分类 for level2_cat in level1_cat["sub_categorys"]: category2 = GoodsCategory() category2.name_en = level2_cat["code"] category2.name = level2_cat["name"] category2.category_level = 2 category2.parent_category = category1 category2.save() # 三级分类 for level3_cat in level2_cat["sub_categorys"]: category3 = GoodsCategory()
import django django.setup() from goods.models import GoodsCategory from db_tools.data.category_data import row_data def add_cate(parent_cate, parent_cate_instance, deap): cates = parent_cate.get("sub_categorys", None) if cates: for sub_cate in cates: cate_instance = GoodsCategory() cate_instance.name = sub_cate["name"] cate_instance.code = sub_cate["code"] cate_instance.parent_category = parent_cate_instance cate_instance.category_type = deap + 1 cate_instance.save() add_cate(sub_cate, cate_instance, deap + 1) else: return for cate in row_data: cate_instance = GoodsCategory() cate_instance.name = cate["name"] cate_instance.code = cate["code"] cate_instance.category_type = 1 cate_instance.save() add_cate(cate, cate_instance, deap=1)
import sys import os pwd = os.path.dirname(os.path.realpath(__file__)) sys.path.append(pwd) os.environ.setdefault("DJANGO_SETTINGS_MODULE", "MxShop2.settings") import django django.setup() 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.name = lev1_cat['name'] lev1_instance.code = lev1_cat['code'] lev1_instance.category_type = 1 lev1_instance.save() for lev2_cat in lev1_cat['sub_categorys']: lev2_instance = GoodsCategory() lev2_instance.name = lev2_cat['name'] lev2_instance.code = lev2_cat['code'] 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.name = lev3_cat['name']
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 GoodsCategory#必须在django初始化之后才能引入 from db_tools.data.category_data import row_data for lev1_cat in row_data: lev1_obj=GoodsCategory() lev1_obj.code=lev1_cat["code"] lev1_obj.name=lev1_cat["name"] lev1_obj.category_type=1 lev1_obj.save() for lev2_cat in lev1_cat["sub_categorys"]: lev2_obj = GoodsCategory() lev2_obj.code = lev2_cat["code"] lev2_obj.name = lev2_cat["name"] lev2_obj.category_type = 2 lev2_obj.parent_category=lev1_obj lev2_obj.save() for lev3_cat in lev2_cat["sub_categorys"]: lev3_obj = GoodsCategory() lev3_obj.code = lev3_cat["code"] lev3_obj.name = lev3_cat["name"]
pwd = os.path.dirname(os.path.realpath(__file__)) sys.path.append(pwd + "../") os.environ.setdefault("DJANGO_SETTINGS_MODULE", "daydayfresh.settings") import django django.setup() from goods.models import GoodsCategory from db_tools.data.category_data import row_data for lev1_cat in row_data: lev1_intance = GoodsCategory() lev1_intance.code = lev1_cat["code"] lev1_intance.name = lev1_cat["name"] lev1_intance.category_type = 1 lev1_intance.save() for lev2_cat in lev1_cat["sub_categorys"]: lev2_intance = GoodsCategory() lev2_intance.code = lev2_cat["code"] lev2_intance.name = lev2_cat["name"] lev2_intance.category_type = 2 lev2_intance.parent_category = lev1_intance lev2_intance.save() for lev3_cat in lev2_cat["sub_categorys"]: lev3_intance = GoodsCategory() lev3_intance.code = lev3_cat["code"] lev3_intance.name = lev3_cat["name"]
""" 加載 category_data 文件 """ import sys import os # 先配置路徑 pwd = os.path.dirname(os.path.realpath(__file__)) sys.path.append(pwd + '../') os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'djangoProject.settings') import django django.setup() # 外部腳本調用django環境 # ====================================== from goods.models import GoodsCategory from db_tools.data.category_data import row_data for lev1 in row_data.values(): for lev2 in lev1: lev2_instance = GoodsCategory() lev2_instance.code = lev2['code'] lev2_instance.name = lev2['name'] lev2_instance.category_type = 1 lev2_instance.save() print('Category data imported successfully')