1

你好(請原諒我的醜英語:P),Django的:使用archive_index與DATE_FIELD從相關模型

想象這兩個簡單的模型:

from django.contrib.contenttypes import generic 
from django.db import models 

class SomeModel(models.Model): 
    content_type = models.ForeignKey(ContentType) 
    object_id = models.PositiveIntegerField(_('object id')) 
    content_object = generic.GenericForeignKey('content_type', 'object_id') 

    published_at = models.DateTimeField('Publication date') 


class SomeOtherModel(models.Model): 
    related = generic.GenericRelation(SomeModel) 

我想用archive_index與SomeOtherModel通用視圖,但它不工作:

from django.views.generic.date_based import archive_index 

archive_index(request, SometherModel.objects.all(), 'related__published_at') 

誤差來自archive_index在管線28(使用Django 1.1):

date_list = queryset.dates(date_field, 'year')[::-1] 

凸起的例外是:

SomeOtherModel has no field named 'related__published_at' 

你有什麼想法解決它?

非常感謝你:)

回答

1

從通過Django的源代碼挖掘,通用視圖archive_index似乎並不支持相關領域是GenericRelation秒。

這是因爲查詢集方法dates不支持通用關係。考慮將它作爲Django bug跟蹤器上的bug /功能請求提交。

+0

好的,謝謝你的回答。 :) – user176455 2009-09-22 11:56:06

+0

從Django 1.8開始,情況似乎仍然如此 – Basil 2016-03-22 15:11:53