我在我的模型上使用一个自定义类,通过一个名为django-filebrowser的应用程序提供图像上传。
# myapp/models.py
class Book(models.Model):
name = models.CharField(max_length=30)
image = FileBrowseField("Image", max_length=200, blank=True, null=True)
...
该模型使用filebrowser的自定义字段“filebrowser field”,它将一个链接添加到单独的上传页面(http://site/admin/filebrowser/browse/?ot=说明&o=日期)。我想做的是调整自定义表单的模板以添加一个“dir”参数,如下所示:(http://site/admin/filebrowser/browse/?ot=desc&o=date&dir=book1)。在本例中,book1将从本书的“name”字符域中检索。
我知道我要修改的模板是由filebrowser的fields.py呈现的,并且有一个变量设置了“dir”参数,但是我不知道如何将字符串值从我自己的模型获取到fields.py,这样我就可以设置这个变量。有人有什么建议吗?
最佳答案
在别的地方找到了解决办法,所以我想我可以分享一下:
# models.py
class Book(models.Model):
name = models.CharField(max_length=30)
image = FileBrowseField("Image", max_length=200, blank=True, null=True)
...
def __init__(self, *args, **kargs):
super(Property, self).__init__(*args, **kargs)
self._meta.get_field_by_name("image")[0].directory = self.name