如果我有一个由FileField组成的模型MyImages,有没有办法可以通过文件的URL查询它?我知道Django允许类似的东西:
my_image.file.url
但我不确定在FileField中URL是否可查询。谢谢!
答案 0 :(得分:1)
您可以在模型中创建一个url字段并覆盖save方法以将其设置为file.url,这样您就可以通过此url查询模型。
class MyModel(model.Model):
image=models.ImageField(upload_to='folder')
url=models.CharField(...)
def save(self, *args, **kwargs):
self.url = self.image.url
super(Model, self).save(*args, **kwargs)
然后你将url字段隐藏在表单中 (在模型字段上设置editable = False。因此,通过ModelForm从模型创建的任何表单都不会包含该字段。More info here)