Fan*_*e27 2 python django image dynamic django-models
我想更改图像的名称,将其重命名为门的颜色。
这是我的代码:
class Door(models.Model) :
image = models.ImageField(upload_to='doors')
color = models.ForeignKey(Color, on_delete=models.CASCADE)
price = models.DecimalField(max_digits=10, decimal_places=2, default='119.99')
Run Code Online (Sandbox Code Playgroud)
我看过很多东西,但我还不知道如何去做。
如果您知道我的问题的答案,请帮助我。
Moh*_*Ali 10
你可以这样做:
def upload_location(instance, filename):
filebase, extension = filename.split('.')
return 'images/%s.%s' % (instance.color.name, extension)
class Color(models.Model):
name = models.CharField(max_length=20)
class Door(models.Model) :
image = models.ImageField(upload_to=upload_location)
color = models.ForeignKey(Color, on_delete=models.CASCADE)
price = models.DecimalField(max_digits=10, decimal_places=2, default='119.99')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2674 次 |
| 最近记录: |