是否可以访问由 ForeignKey Django 连接的不同表的值

Is it possible to access the value of different tables connected by ForeignKey Django

所以我为这个问题创建了一个小的数据库关系:

from django.db import models

# Create your models here.


class Poll(models.Model):

    title = models.CharField(max_length=255)
    date_created = models.DateTimeField(auto_now_add=True)
    is_active = models.BooleanField(default=True)

    def __str__(self):

        return self.title



class Option(models.Model):

    title= models.CharField(max_length=50)
    poll = models.ForeignKey(Poll, on_delete=models.CASCADE)
    desc = models.CharField(max_length=255)

    def __str__(self):

        return self.title



class Voter(models.Model):

    name = models.CharField(max_length = 255)
    option = models.ForeignKey(Option, on_delete=models.CASCADE)

    def __str__(self):

        return f'{self.name} - {self.option}'

所以我有两个问题:

  1. 是否可以从 Voter 模型的 __str__ 函数访问 Option 模型的 desc 字段的值?

  2. 是否可以从 Voter 模型的 __str__ 函数访问 Poll 模型的 date_created 字段的值?

非常感谢!

您可以使用.访问相关模型和字段,并且由于您的模型关系,您可以像下面那样做。

1- {self.option.desc}

2- {self.option.poll.date_created}