[英]Calling a foreign key relationship in an “if” statement in Django template
[英]Django - get foreign key field name in django template for if statement
在我的模板中,我有一個 if 語句來檢查文件的類型,但是 file_type 字段是一個外鍵對象。 我如何才能在 if 語句中使用 file_type.type 字段?
模板:
{% for file in Site.sitefiles_set.all %}
{% if file.file_type != 'Site Plan' %}
模型:
class SiteFileType(models.Model):
type = models.CharField(max_length=200)
class Meta:
verbose_name = "File Type"
verbose_name_plural = "File Type"
def __unicode__(self):
return self.type
class SiteFiles(models.Model):
showroom_config_data = models.ForeignKey(ShowroomConfigData,verbose_name="Showroom")
major_site_info = models.ForeignKey(MajorSiteInfoData,verbose_name="Major Site")
site_image = models.ImageField(blank=True,upload_to=site_files_path)
site_file = models.FileField(blank=True,upload_to=site_files_path)
file_name = models.CharField(max_length=200,verbose_name="File Name (Optional)",blank=True)
file_type = models.ForeignKey(SiteFileType)
class Meta:
verbose_name = "Site Files"
verbose_name_plural = "Site Files"
def __unicode__(self):
return '%s | %s ' % (self.showroom_config_data.location, self.major_site_info.location)
您只需要將type
附加到您已經擁有的變量(它是一個SiteFileType
對象):
{% for file in Site.sitefiles_set.all %}
{% if file.file_type.type != 'Site Plan' %}
...
{% endif %}
{% endfor %}
只需按照點再上一層即可。
{% if file.file_type.type != 'Site Plan' %}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.