ユーザーは、画像、ビデオ、オーディオの3種類のコンテンツをサイトにアップロードできます。各タイプのモデルは次のとおりです。
class ImageItem(models.Model):
user = models.ForeignKey(User)
upload_date = models.DateTimeField(auto_now_add=True)
image = models.ImageField(upload_to=img_get_file_path)
title = models.CharFiled(max_length=1000,
blank=True)
class VideoItem(models.Model):
user = models.ForeignKey(User)
upload_date = models.DateTimeField(auto_now_add=True)
video = models.FileField(upload_to=vid_get_file_path)
title = models.CharFiled(max_length=1000,
blank=True)
class AudioItem(models.Model):
user = models.ForeignKey(User)
upload_date = models.DateTimeField(auto_now_add=True)
audio = models.FileField(upload_to=aud_get_file_path)
title = models.CharFiled(max_length=1000,
blank=True)
と呼ばれるページがあり、ユーザーがアップロードしたすべてのアイテムを、最近アップロードされたものから最も古いアップロードlibrary.html
の順にレンダリングします(各インスタンスのとが表示され、左側にアイテムの種類を表す小さなアイコンが表示されます)。title
upload_date
3つの個別のクエリが必要だとすると、3つのクエリセットをマージするにはどうすればよいですか?最近アップロードされたものから順番になっていることを確認するにはどうすればよいですか?