관리자 양식에 사용 된 위젯을 formfield_overrides으로 대체 할 수 있습니다.
https://docs.djangoproject.com/en/dev/ref/contrib/admin/#django.contrib.admin.ModelAdmin.formfield_overrides에서
ModelAdmin.formfield_overrides
이 관리자에 사용되는 필드 옵션 중 일부를 대체 할 수있는 빠른 - 및 - 더러운 방법을 제공합니다. formfield_overrides는 생성시 필드에 전달할 인수의 사전에 필드 클래스를 매핑하는 사전입니다.
그래서 귀하의 경우에는 멋진 오래된 텍스트 필드로 멋진 열린 레이어 맵을 덮어 쓰고 싶을 것입니다. 다음은 GeoModel 모델의 모든 PointField에 대한 텍스트 입력으로 맵을 대체합니다.
from app.models import GeoModel
from django.forms.widgets import TextInput
from django.contrib.gis.db import models
from django.contrib import admin
class DirectAdmin(admin.ModelAdmin):
formfield_overrides = {
models.PointField: {'widget': TextInput }
}
admin.site.register(GeoModel, DirectAdmin)
당신은 텍스트 영역을 찾을 수 있습니다 쉽게 많은 WKT를 읽을 수 있습니다, 그래서에 두 번째 수입을 변경
from django.forms.widgets import Textarea
그리고 대신의 TextInput의 재정에 그것을 사용
models.PointField: {'widget': Textarea }
출처
2014-02-10 11:32:49
Kip
감사합니다. 멋진 OpenLayers지도는 더 이상 존재하지 않습니다! 텍스트 블록을 볼 수 있도록 상자를 더 크게 만들 수 있습니까? 예를 들어, 내가 붙여 넣는 WKT의 일부는 꽤 길다. 모든 것을 보는 것이 좋을 것이다. – djq
위대한, 그 트릭을 다행. 가장 간단한 방법은 그것을 Textarea로 변경하는 것입니다, 나는 이것을 보여줄 답을 편집 할 것입니다. – Kip