Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.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对象的唯一引用id_Python_Django - Fatal编程技术网

Python 获取Django对象的唯一引用id

Python 获取Django对象的唯一引用id,python,django,Python,Django,我想在我的Django项目中创建一个函数,以确保加入我的网站的每个用户的参考ID的唯一性,但是当单击join时,我得到以下错误: Join matching query does not exist. 这是我的职责: def get_ref_id(): ref_id = str(uuid.uuid4())[:10].replace('-','').lower() id_exists = Join.objects.get(ref_id=ref_id) if id_exis

我想在我的
Django
项目中创建一个函数,以确保加入我的网站的每个用户的参考ID的唯一性,但是当单击
join
时,我得到以下错误:

Join matching query does not exist.
这是我的职责:

def get_ref_id():
    ref_id = str(uuid.uuid4())[:10].replace('-','').lower()
    id_exists = Join.objects.get(ref_id=ref_id)
    if id_exists:
        get_ref_id()
    return ref_id

如果查询不存在,django模型上的
.get
将引发异常。所以这句话没有意义:

id_exicts = Join.objects.get(ref_id=ref_id)
也许你想要的是

id_exicts = Join.objects.filter(ref_id=ref_id).exists()

或者,您可以从
.get
中捕获
Join.DoesNotExist
异常,并以此方式构建逻辑

如果查询不存在,django模型上的
.get
将引发异常。所以这句话没有意义:

id_exicts = Join.objects.get(ref_id=ref_id)
也许你想要的是

id_exicts = Join.objects.filter(ref_id=ref_id).exists()

或者,您可以从
.get
中捕获
Join.DoesNotExist
异常,并以此方式构建逻辑

提示:使用
uuid4().hex
而不是你正在做的那些奇怪的字符串,我只是这么做了,但根本没有创建引用Id!提示:使用
uuid4().hex
而不是你正在做的那些奇怪的字符串,我只是这么做了,但根本没有创建引用Id!如果你不介意帮忙,我有个问题。接下来教我的课程也使用了相同的方法。使用try和except语句,但它是有效的。为什么?如果你不介意帮忙的话,我有个问题。接下来教我的课程也使用了相同的方法。使用try和except语句,但它是有效的。为什么?