Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django:键(slug)=(*)已存在_Python_Django - Fatal编程技术网

Python Django:键(slug)=(*)已存在

Python Django:键(slug)=(*)已存在,python,django,Python,Django,我对Django和python非常陌生,我想了解更多关于如何填充我的Postgres数据库的信息 这是我当前的模型:models.py from django.template.defaultfilters import slugify class Skill(models.Model): name = models.TextField() slug = models.TextField(unique = True) def __unicode__(self):

我对Django和python非常陌生,我想了解更多关于如何填充我的Postgres数据库的信息

这是我当前的模型:models.py

from django.template.defaultfilters import slugify

class Skill(models.Model):
    name = models.TextField()
    slug = models.TextField(unique = True)
    def __unicode__(self):
        return "%s" % self.name
和我的视图:views.py

r = r.json()

try:
    Skills = r['data']['skills']
except:
    pass

for skill in Skills:
    skill = Skill.objects.create(name=skill['name'],slug=slugify(skill['name']))
我得到了一个错误: 异常类型:IntegrityError

详细信息:键(slug)=(系统工程)已存在

我一直在读一本书,但还是没能解决我的问题。当对象已经存在于数据库中时,objects.create()将显示一个错误,但我在上面的代码中遇到了错误。“unique=True”是否会导致错误?你怎么解决这个问题

跟进


我的问题比我想象的要简单。我能够运行
psql
交互式终端并查看我的数据填充情况。我无法在管理员网站上看到它,因为我错过了在admin.py上注册模型的机会。当您提供
unique=True
时,该字段在整个表中都是唯一的。因此,当您尝试添加已在DB中的数据时,它将引发错误。有关更多详细信息,请参见此

你对
技能的内容是什么?“技能”:[{“名称”:“系统工程”},{“名称”:“消费电子”},{“名称”:“产品开发”},…]你能提供你的错误的全部回溯吗?这是我的全部感谢!我的问题是数据尚未添加,但它会将数据识别为重复数据。我尝试过执行
try
&
,除了
,尽管它从未执行过对象。created您确定它从未对数据库执行过吗<代码>对象。创建()
始终创建实例。如果它真的不存在,你需要在数据库中检查它。我查看了数据库,现在看到了这些对象。!