我正在尝试访问管理面板中的 Django-filer 字段,但我没有获取图像,我知道 filer 设置的存储位置是随机的,但obj.bg_image_one.image.url
似乎不起作用
我的模特
class CustomFilters(models.Model):
input_file = models.ImageField(
upload_to='input/images/', blank=True, null=True)
name = models.CharField(max_length=50)
action = models.CharField(max_length=150, choices=ACTION_CHOICES)
is_active = models.BooleanField(default=False)
bg_image_one = FilerFileField(null = True,on_delete = models.CASCADE)
bg_image_two = FilerFileField(null = True,on_delete = models.CASCADE,related_name="bg_image_two")
bg_image_three = FilerFileField(null = True,on_delete = models.CASCADE,related_name="bg_image_three")
bg_image_four = FilerFileField(null = True,on_delete = models.CASCADE,related_name="bg_image_four")
bg_image_five = FilerFileField(null = True,on_delete = models.CASCADE,related_name="bg_image_five")
管理员代码
class CustomFiltersAdmin(admin.ModelAdmin):
list_display = ('name', 'is_active', 'action',
'Input_Image', 'Output_Image','bg_image_one')
list_filter = ('name', 'is_active', 'action')
search_fields = ('name', 'action', 'created_by')
ordering = ('name',)
autocomplete_fields = ('user',)
readonly_fields = ['Input_Image', 'background_image_1',
'background_image_2', 'background_image_3', 'background_image_4', 'background_image_5', 'Output_Image']
def background_image_1(self, obj):
return mark_safe('<img src="{url}" width="{width}" height="auto" />'.format(
url=obj.bg_image_one.image.url,
width=obj.bg_image_one.image.width,
height=obj.bg_image_one.image.height,
)
)