如何在 Django 中使用 upload_to 指定目录和函数
how to specify a directory and a function with upload_to in django
我有 2 款车型和配置文件:
class Car(models.Model):
name = models.CharField(max_length=200)
image_file = models.ImageField(upload_to=naming, null=True, blank=True)
class Profile(models.Model):
name = models.CharField(max_length=200)
image_file = models.ImageField(upload_to='profiles', null=True, blank=True)
我需要命名功能,但我也希望上传的文件位于cars文件夹中,而不仅仅是media目录中。
有什么方法可以将它们上传到该文件夹并调用该函数吗?
在 doc 中,我只能找到一种方法,但不能同时找到两种方法。
提前致谢!
不明白什么叫同时上传和调用函数,但是确实调用了函数,否则不会产生任何路径。对于您的第一个问题,您可以执行以下操作:
def naming(instance, file_name):
model_name = instance.__class__.__name__
return os.path.join(model_name, file_name)
我有 2 款车型和配置文件:
class Car(models.Model):
name = models.CharField(max_length=200)
image_file = models.ImageField(upload_to=naming, null=True, blank=True)
class Profile(models.Model):
name = models.CharField(max_length=200)
image_file = models.ImageField(upload_to='profiles', null=True, blank=True)
我需要命名功能,但我也希望上传的文件位于cars文件夹中,而不仅仅是media目录中。
有什么方法可以将它们上传到该文件夹并调用该函数吗? 在 doc 中,我只能找到一种方法,但不能同时找到两种方法。
提前致谢!
不明白什么叫同时上传和调用函数,但是确实调用了函数,否则不会产生任何路径。对于您的第一个问题,您可以执行以下操作:
def naming(instance, file_name):
model_name = instance.__class__.__name__
return os.path.join(model_name, file_name)