如何通过TranslatableModel实例无需翻译即可访问这些字段?

时间:2016-06-06 08:45:05

标签: python django imagefield django-hvad

我需要项目的名称(字段项目,没有翻译)来构建ImageField中upload_to目录的路径。但是我得到了这个错误:

/ admin / api / stage / add /中的AttributeError ' StageTranslation'对象没有属性' project'

def stage_name_path(instance, filename):
    # get error at instance.project
    return '/'.join(filter(None, (instance.project, 'stages', filename)))

class Stage(TranslatableModel):
    name = models.CharField(
        'Short name',
        max_length=50
    )
    text = models.CharField(
        'Text',
        max_length=120
    )
    translations = TranslatedFields(
            image=models.ImageField(
            'Image (i18n)',
            upload_to=stage_name_path
        ),
    )

    project = models.ForeignKey(Project, related_name='stages')

通过实例,我可以使用翻译(图像)访问字段,但我无法访问字段名称,文本或项目......真正需要的字段。

1 个答案:

答案 0 :(得分:0)

尝试:instance.master.projectStageTranslation有一个ForeignKey字段master是对Sage的引用。