首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >导入CSV时Django get_or_create返回models.DoesNotExist

导入CSV时Django get_or_create返回models.DoesNotExist
EN

Stack Overflow用户
提问于 2017-03-30 18:07:05
回答 1查看 3.2K关注 0票数 1

我花了相当长的时间来弄清楚这一点。我只是尝试使用Python的CSV模块和Django的get_or_create()导入csv文件。

这是我的简单代码(基于this代码构建):

代码语言:javascript
复制
import csv
from .models import Person

def import_data():
    with open('/path/to/csv/people_list.csv') as f:
           reader = csv.reader(f)
           for row in reader:
               _, created = Person.objects.get_or_create(
                   name=row[0],
                   p_id=row[1],
                   current_status=row[2],
                   )

当我在外壳上运行import_data()时,我得到以下错误

代码语言:javascript
复制
peoplelisting.models.DoesNotExist: Person matching query does not exist.

是的,这个特定的人并不存在,但这不就是使用get_or_create()的全部意义吗?如果它不存在,创建它吗?

EN

回答 1

Stack Overflow用户

发布于 2018-07-17 07:27:31

你可以跳过第一行,而不是每次都检查行:

代码语言:javascript
复制
next(reader, None)  # skip the headers

来源:Skip the headers when editing a csv file using Python

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43114679

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档