from django.db import models
from django import forms
class MyModelAdmin(admin.ModelAdmin):
formfield_overrides = {
models.ImageField: {'widget': forms.FileInput },
}
# "models.py"
from django.db import models
class Image(models.Model):
image = models.ImageField()
def __str__(self):
return self.image.url
然后,下面是**Image管理员**:
# "admin.py"
from django.contrib import admin
from .models import Image
@admin.register(Image)
class ImageAdmin(admin.ModelAdmin):
pass
然后,显示Currently:和一个链接,如下所示:
现在,如果将forms.FileInput赋值给formfield_overrides,如下所示:
# "admin.py"
from django.contrib import admin
from .models import Image
from django import forms
@admin.register(Image)
class ImageAdmin(admin.ModelAdmin): # Here # Here
formfield_overrides = {models.ImageField: {"widget": forms.FileInput}}
2条答案
按热度按时间ioekq8ef1#
Django Admin使用
AdminFileWidget
来渲染ImageFields。AdminFileWidget
只是从标准的FileInput
小部件继承而来,并添加了额外的“当前”属性。因此,只需使用FileInput
:8xiog9wr2#
可以使用forms.FileInput删除
Currently:
和一个链接。例如,下面有**
Image
型号**:然后,下面是**
Image
管理员**:然后,显示
Currently:
和一个链接,如下所示:现在,如果将
forms.FileInput
赋值给formfield_overrides,如下所示:然后,删除
Currently:
和一个链接,如下所示:另外,如果你重写
forms.FileInput
并将CustomFileInput
赋值给formfield_overrides
,如下所示。(*</p>
可以被移除,因为</p>
在Django中是自动添加的):您可以将
Currently:
更改为Presently:
,如下所示: