gpt4 book ai didi

python - 为什么 django 的 create_user 方法不验证唯一性?

转载 作者:行者123 更新时间:2023-11-30 23:45:13 25 4
gpt4 key购买 nike

from django.contrib.auth.models import User

a = User.objects.create_user("1","2","3")
b = User.objects.create_user("1","2","3")

还没有错误...

a.validate_unique()
ValidationError: {'username': [u'User with this Username already exists.']}

当 b 被保存为 create_user 的一部分时,我希望收到验证错误。

查看Django Model Instance Reference ,“保存时会发生什么”部分并未描述任何时候的保存。

这是有意的设计决定还是由于使用 django-nonrel 造成的副作用?我本来期望关系数据库返回 IntegrityError 或类似的东西。

最佳答案

您可能正在使用 SQLite,它不支持唯一键约束。

create_user 假设您已经完成了所有需要的检查,通常是在表单的验证函数中。它给你足够的绳子来吊死自己。

关于python - 为什么 django 的 create_user 方法不验证唯一性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9678415/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com