是否可以访问由 ForeignKey Django 连接的不同表的值
Posted
技术标签:
【中文标题】是否可以访问由 ForeignKey Django 连接的不同表的值【英文标题】:Is it possible to access the value of different tables connected by ForeignKey Django 【发布时间】:2021-09-21 05:35:44 【问题描述】:所以我为这个问题创建了一个小的数据库关系:
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'
所以我有两个问题:
是否可以从Voter
模型的__str__
函数访问Option
模型的desc
字段的值?
是否可以从Voter
模型的__str__
函数访问Poll
模型的date_created
字段的值?
非常感谢!
【问题讨论】:
【参考方案1】:您可以使用.
访问相关模型和字段,并且由于您的模型的关系,您可以执行以下操作。
1-self.option.desc
2-self.option.poll.date_created
【讨论】:
虽然此代码可能会回答问题,但提供有关它如何和/或为什么解决问题的额外上下文将提高答案的长期价值。以上是关于是否可以访问由 ForeignKey Django 连接的不同表的值的主要内容,如果未能解决你的问题,请参考以下文章
可以在 Django 中执行条件 ForeignKey.on_delete 吗?
Django Admin 中的 ForeignKey 或 ManyToMany 字段搜索