[英]Dynamic File Path in Django and South
我在設置imageField的動態路徑時遇到問題。
這是我的models.py
class Imagen(models.Model):
def get_upload_path(self, filename):
return os.path.join(
"img/experiencias/experiencia_%d" % self.id_experiencia.id, 'ficha' + '_' + filename)
nombre = models.CharField(max_length=50)
id_experiencia = models.ForeignKey(TipoExperiencia)
imagen = models.ImageField(upload_to= get_upload_path)
caption = models.CharField(max_length=150,blank=True)
alt = models.CharField(max_length=100)
這是我在這里找到的解決方案
這實際上在更新對象時工作正常,但是當我嘗試插入新元素時,插入失敗,因為在那一刻self不存在。
我在這里嘗試了另一個解決方案,其建議是重寫ImageField方法來自定義upload_to。
問題是我使用South, 管理自定義字段非常困難
我使用Django 1.5。 我想知道是否存在任何簡單的方法來管理django中的動態文件路徑
謝謝
或者,您可以覆蓋save方法以將文件移動到正確的路徑。
class Model(models.Model):
def save(self, *args, **kwargs):
instance = super(Model, self).save(*args, **kwargs)
# your logic here to change the file location
return instance
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.