모델의 인스턴스가 여러 개 있으며 인스턴스마다 관련 이메일 주소가 있습니다. 그러나 여러 개의 인스턴스가 동일한 연결된 전자 메일 주소를 가지고 있지만 filter['email']
을 admin.py
에 넣으면 인스턴스의 전자 메일, 즉 동일한 전자 메일의 여러 복사본이 여러 경우에 걸쳐 긴 목록으로 표시됩니다.Django admin filter
여러 번 나열된 이메일을 삭제할 수있는 방법이 있습니까? 또는 필터보기를 좀 더 멋지게 사용자 정의하는 방법은 무엇입니까? (아마도 드롭 다운 메뉴일까요?)
나는 현재 ManyToManyField
관계가 없거나 이와 비슷한 것을 가지고 있습니다. 방금 데이터베이스에 인스턴스 name
및 email
이있는 인스턴스가 있습니다. 내 models.py은 다음과 같습니다
import ldapdb.models
from ldapdb.models.fields import CharField, IntegerField, ListField
class Item(ldapdb.models.Model):
item = CharField(db_column='item', max_length=30, primary_key=True, unique=True)
email = CharField(db_column='mail', max_length=20)
내 admin.py 그래서 다음과 같습니다 분명히 내가 https://docs.djangoproject.com/en/1.3/ref/contrib/admin/보고 된 적이 있지만 정말의 방법으로 많이 볼 수
from items.models import Item
from django.contrib import admin
class ItemAdmin(admin.ModelAdmin):
readonly_fields = ('email',)
list_display = ('item', 'email')
list_filter = ['email']
search_fields = ['item']
admin.site.register(Item, ItemAdmin)
내 관리자의 필터보기 사용자 정의.
내 데이터베이스가 처음으로 LDAP에 있으므로 'ForeignKey' 자료를 사용할 수 없습니다. 내 데이터베이스는'name'과'email' 필드를 가진 많은 객체를 가지고 있습니다. 그리고 많은 객체는 단지 동일한 이메일을 가지고 있습니다. 관리자는 'list_filter = ['pub_date ']'.... 행을 포함 시켰습니다. 관리자 페이지의 RHS에는 여러 개의 복사본을 포함하여 인스턴스의 전자 메일 목록이 있습니다. 같은 사람. – user2564502
그래서 무엇이 문제입니까? 당신은 이메일의 일부가 스스로를 반복한다는 것을 스스로 말했기 때문에 그것이 한 번 이상 볼 수있는 이유가됩니다. 나는 정말로 당신이 코드를 게시 할 것을 제안한다. 그래서 나는 당신이 가지고있는 문제를 더 잘 이해할 수있다. – yuvi
나를 도우려는 것에 감사하지만, 코드의 어떤 부분이 도움이 될지 이해하지 못한다. . models.py 자체? (그것은 단지 이름과 이메일을 정의하는 것입니다). admin.py는'list_filter = [ 'email']' – user2564502