第一步: copy文件, 设置路径
把brands和goods文件夹copy到以下路径, 并配置好相应字段的upload to
第二步: 导入GoodsCategory
准备独立使用models模块, 来一次性导入大量的 "goods.models.GoodsCategory" 数据
为什么不先导入Goods? 因为Goods里有GoodsCategory的外键
先把源文件 category_data.py 和 product_data.py 复制到如下路径, 然后手动新建import_category_data和import_product_data
import_category_data.py
# 独立使用django的model模块import sys,os # from users.models import UserProfile# 如果在配置DJANGO_SETTINGS_MODULE之前导入了与django有关的模块,会报错,见下面的截图:# "You must either define the environment variable DJANGO_SETTINGS_MODULE" # 把项目根路径加到系统环境变量中去pwd=os.path.dirname(os.path.abspath(__file__))sys.path.append(pwd+"../") # 导入settings文件os.environ.setdefault("DJANGO_SETTINGS_MODULE","MxShop.settings") # django初始化import djangodjango.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"] lev3_instance.code = lev3_cat["code"] lev3_instance.category_type = 3 lev3_instance.parent_category = lev2_instance lev3_instance.save()
接下来执行该文件, 就可以发现数据库中自动填充了很多数据, 一共120条, 一级类目有8个
第三步: 导入Goods
准备独立使用models模块, 来一次性导入
----- over ------
原文地址:https://www.cnblogs.com/jiangzongyou/p/12079209.html
时间: 2024-11-07 12:17:32