﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
13119	Can't pickle queryset	Paul Garner	nobody	"Was working ok until we upgraded from 1.1.1 to 1.2-beta-1 this morning.
Started getting the ""can't pickle function object"" error from this code:
{{{
class RatingDimensionManager(models.Manager):
    use_for_related_fields = True
    
    def get_for(self, obj):
        ct = ContentType.objects.get_for_model(obj)# cached by contentypes framework
        def from_db(obj):
            result = self.filter(content_type=ct.pk)
            cache.set('ratings:dimensions_for_type:%s:%s' % (hash(str(self.all().query)), ct.pk), result, settings.RATINGS_DIMENSIONS_FOR_CT_TTL)
            return result
        value = cache.get('ratings:dimensions_for_type:%s:%s' % (hash(str(self.all().query)), ct.pk), None)
        if value is None:
            value = from_db(obj)
        return value

class RatingDimension(models.Model):
    content_type = models.ForeignKey(ContentType)
    label = models.CharField(max_length=256)
    sort_weight = models.IntegerField(default=100)
    average = models.FloatField(editable=False, default=0)
    
    objects = RatingDimensionManager()
    
    def __unicode__(self):
        return self.label

    class Meta():
        ordering = ('sort_weight','label',)
}}}

Seems related to http://code.djangoproject.com/ticket/7506"		closed	Database layer (models, ORM)	1.2-beta		worksforme	querySet pickle	ego@…	Unreviewed	0	0	0	0	0	0
