Tôi gặp sự cố lạ trong quản trị django list_display
. Bất cứ khi nào tôi thêm khóa ngoại vào list_display
, toàn bộ danh sách thay đổi danh sách sẽ trống khi chỉ hiển thị tổng số mục nhập.Danh sách quản trị Django Hiển thị + ForeignKey = Danh sách thay đổi trống
models.py:
class Organization(models.Model):
org_id = models.AutoField(primary_key=True)
org_name = models.CharField(max_length=288)
def __unicode__(self):
return self.org_name
class Meta:
db_table = u'organization'
class Server(models.Model):
server_id = models.AutoField(primary_key=True)
server_name = models.CharField(max_length=135,verbose_name="Server Name")
org = models.ForeignKey(Organization,verbose_name="Organization")
def __unicode__(self):
return self.server_name
class Meta:
db_table = u'server'
admin.py:
class ServerAdmin(admin.ModelAdmin):
list_display = ('server_name','org')
admin.site.register(Server,ServerAdmin)
Bây giờ tôi mong đợi mã này để chỉ cho tôi tên tổ chức trong ChangeList View
, Nhưng thay vào đó tôi nhận được điều này:
Nếu tôi loại bỏ các org
trong list_display
của ServerAdmin
lớp, tôi có được điều này:
tôi không sửa đổi các mẫu hoặc ghi đè lên bất kỳ ModelAdmin
phương pháp. Tôi đang sử dụng Mysql (5.1.58) làm cơ sở dữ liệu của tôi đi kèm với kho lưu trữ ubuntu 11.10.
Tôi sẽ rất vui nếu tôi có thể nhận được sự hỗ trợ cho những người có vấn đề này. Cảm ơn trước.
trong 'models.py' tôi thấy 'TlxServer' và trong' admin.py' chỉ' Server'. Đó có phải là lỗi đánh máy không? – jcollado
Bạn không cần phải xác định một AutoField. Django tự động tạo khóa chính cho mỗi bảng. –
@jcollado: Đó là lỗi chính tả: P giả sử là 'Máy chủ' – Pannu