Django 模型如何获得一个字段?

jia*_* Ma 4 django

我知道如何获得一条线,但我不知道如何获得一个领域。例如,有一个表,有 id、title、content 字段。

ModelsExample.objects.filter(id = showid)# get one line.
Run Code Online (Sandbox Code Playgroud)

如何仅获取标题字段?

Wto*_*wer 6

您可以使用valuesvalues_list。取决于您希望如何使用游览上下文:

  • 使用values()示例:

    r = ModelsExample.objects.filter(id=showid).values('title')
    
    Run Code Online (Sandbox Code Playgroud)

    这将返回如下内容:[{'title': 'My title'}]因此您可以使用r[0]['title'].

  • 使用values_list()示例:

    r = ModelsExample.objects.filter(id=showid).values_list('title')
    
    Run Code Online (Sandbox Code Playgroud)

    这将返回类似的内容:[('My title',)]因此您可以将其作为r[0][0].

  • 使用values_list(flat=True)示例:

    r = ModelsExample.objects.filter(id=showid).values_list('title', flat=True)
    
    Run Code Online (Sandbox Code Playgroud)

    这将返回类似的内容:['My title']因此您可以将其作为r[0].

当然,您始终可以按以下方式访问模型的每个字段:

r = ModelsExample.objects.get(id=showid)
r.title
Run Code Online (Sandbox Code Playgroud)