Python CSV导入在django中不起作用
获取此load_data.py文件以将csv数据导入django模型表…但它不起作用,在终端中,当我执行命令“python3./load_data.py”时,它会转到同一行,好像load.py甚至没有这样调用:Python CSV导入在django中不起作用,python,django,csv,Python,Django,Csv,获取此load_data.py文件以将csv数据导入django模型表…但它不起作用,在终端中,当我执行命令“python3./load_data.py”时,它会转到同一行,好像load.py甚至没有这样调用: (cost_control_local) juanda@juanda-VirtualBox:~/cost_control_repository/cost_control/csv_data$ python3 ./load_data.py (cost_control_local) juand
(cost_control_local) juanda@juanda-VirtualBox:~/cost_control_repository/cost_control/csv_data$ python3 ./load_data.py
(cost_control_local) juanda@juanda-VirtualBox:~/cost_control_repository/cost_control/csv_data$
这是load_data.py代码:
import csv,sys,os
import django
pathproject = "/home/juanda/cost_control_repository/cost_control"
base_csv_filepath = "/home/juanda/cost_control_repository/cost_control/csv_data"
sys.path.append(pathproject)
os.environ['DJANGO_SETTINGS_MODULE'] = 'config.settings.local'
django.setup()
from cost_control_app.models import Suppliers
def load_suppliers():
print ("Entering...")
csv_file = base_csv_filepath + "supplier_data.csv"
dataReader = csv.reader(open(csv_file, encoding='utf-8'),delimiter=',',quotechar='"')
#dataReader = csv.reader(open(csv_file), delimiter=',', quotechar='"')
for row in dataReader:
if row[0] != 'ID':
Suppliers.objects.create(
supplier=row[0],
supplier_description=row[1]
)
print ("Imported correctly")
有什么想法吗?谢谢你的帮助 您需要在代码底部编写:
if __name__ == "__main__":
load_suppliers()
检查此项以了解有关此项的更多信息
还引述:
“main”是执行顶级代码的作用域的名称。
从标准中读取时,模块的名称设置为“main”
输入、脚本或来自交互式提示的内容
模块可以发现它是否在主作用域中运行
通过检查它自己的名称,该名称允许对
当模块作为脚本或脚本运行时,有条件地执行模块中的代码
使用python-m,但在导入时不使用:
添加了
/
引发以下错误:ValueError:int()的文本无效,以10为基数:'\ufeffID',那么这就是脚本中的错误。您需要显示完整的回溯,以便人们诊断您的错误,我们无法仅通过“ValueError”确定错误。另外,它与这个问题不再相关,因为您的程序开始运行,所以我建议您关闭这个问题并提出另一个问题,这样更多的人可能会从中受益。
csv_file = base_csv_filepath + "/supplier_data.csv"