【发布时间】:2014-05-20 04:38:17
【问题描述】:
我有两个具有一对多关系的对象:
from django.db import models
class DownloadItem(models.Model):
name = models.CharField(max_length=200)
description = models.CharField(max_length=200)
downloadItem = models.ImageField(upload_to='./images/downloadItems', blank=True)
def __unicode__(self):
return self.name
class DownloadItemSample(models.Model):
photo = models.ImageField(upload_to='./images/downloadItemsSample', blank=True)
downloadItem = models.ForeignKey(DownloadItem, blank=True, null=True)
order = models.IntegerField(default=0)
在我看来,我正在做以下事情:
from django.shortcuts import render
from mainstore.models import DownloadItem
def index(request):
downloads_list = DownloadItem.objects.all()
context = {'downloads_list': downloads_list}
return render(request, 'mainstore/index.html', context)
在我的模板中,我想获得以下内容:
{{ downloads_list.downloadItemSample_set.all().order_by('order')[0] }}
我也想遍历数组,但对于这个示例,我使用索引0。
我想写一个自定义模板标签,但我认为这不是最好的方法。我想我可以为DownloadItem 模型编写一个方法,它接受一个索引并返回正确的DownloadItemSample 对象,但目前我也无法创建这个。
解决这个问题的最佳方法是什么?
【问题讨论】:
标签: python django python-2.7 django-models django-templates