我有一个基本模型和代理模型。我想更改“image”字段的upload_to 值,这取决于“file_type”字段。我不确定如何执行此操作,是否需要在我的 .Manager 类或 Proxy 类中指定它。你能否给我同样的细节如何做到这一点。
class FileDescription(models.Model):
    class Meta:
        ordering = ['file_creation_time']
    TYPE_CHOICES = (
        ('homework', 'Homework'),
        ('class', 'Class Papers'),
        ('random', 'Random Papers')                    
    )
    subject = models.ForeignKey('Subjects', null=True, blank=True, primary_key=True)
    subject_name = models.CharField(max_length=100, unique=False)
    file_type = models.CharField(max_length=100, choices=TYPE_CHOICES) 
    ....
    ....
    image = models.ImageField(upload_to= ???????????      blank=True, null=True, max_length=255)
    def __unicode__(self):
        return u'%s' % (self.file_name)
class HomeworkManager(models.Manager):
    def get_query_set(self):
        qs = super(HomeworkManager, self).get_query_set().filter(file_type='homework')
        return qs
class ClassPapersManager(models.Manager):
    def get_query_set(self):
        qs = super(HomeworkManager, self).get_query_set().filter(file_type='class')
        return qs
class RandomPapersManager(models.Manager):
    def get_query_set(self):
        qs = super(HomeworkManager, self).get_query_set().filter(file_type='random')
        return qs
class Homework(FileDescription):
    class Meta:
        proxy = True