8

我有一些带有 filer.fields.image.FilerImageField 作为字段的模型类。

from filer.fields.image import FilerImageField
class ModelName(Model):
    icon = FilerImageField(null=True, blank=True)

如果我有图像文件的本地路径,如何以编程方式创建或填充图标字段?

4

1 回答 1

19

你可以这样处理:

from django.contrib.auth.models import User
from django.core.files import File
from filer.models import Image

filename = 'file'
filepath = 'path/to/file'
user = User.objects.get(username='testuser')
with open(filepath, "rb") as f:
    file_obj = File(f, name=filename)
    image = Image.objects.create(owner=user,
                                 original_filename=filename,
                                 file=file_obj)
    instance = ModelName(icon=image)
    instance.save()

image 是 的一个实例filer.models.Image,将其分配给 Model 实例的 icon 属性,FilerImageField将为您处理它。

于 2013-12-17T14:24:10.513 回答