我有以下模型
from django.db import models
# Create your models here.
class Post(models.Model):
text = models.TextField()
def __str__(self):
return self.text[:50]
POWER_CHOICES= (('O', 'ON'),
('F','OFF')
)
STATE_CHOICES =(('AV','Available'),
('U','In Use '),
('NU','Do Not Use')
)
class Device(models.Model):
name = models.CharField(unique=True,max_length=50 )
ipaddress=models.ForeignKey('Ipaddress', on_delete=models.CASCADE,)
devicetype= models.ForeignKey('DeviceType', on_delete=models.CASCADE)
model= models.ForeignKey('DeviceModel', on_delete=models.CASCADE)
description= models.TextField(max_length=400)
location= models.ForeignKey('Location', on_delete=models.CASCADE)
group= models.ForeignKey('DeviceGroup', on_delete=models.CASCADE)
managment= models.CharField(max_length=100)
power= models.CharField(max_length=6, choices=POWER_CHOICES)
offtime= models.CharField(max_length=30)
state= models.CharField(max_length=10, choices=STATE_CHOICES)
user= models.CharField(max_length=100)
# department= models.ForeignKey('Department',on_delete=models.CASCADE)
comments= models.CharField(max_length=200)
def __unicode__(self):
return self.name[:50]
class DeviceType(models.Model):
name= models.CharField(max_length=100, …Run Code Online (Sandbox Code Playgroud) 我正在使用内置函数为许多字段建立自动完成功能:https : //docs.djangoproject.com/en/2.0/ref/contrib/admin/#django.contrib.admin.ModelAdmin.autocomplete_fields
我有以下模型:
class Ipaddress(models.Model):
ipaddress=models.CharField(max_length=20)
slug = models.SlugField(unique=True)
machinename=models.CharField(max_length=500)
user=models.CharField(max_length=200)
department= models.ForeignKey('Department',on_delete=models.CASCADE,default='Empty')
location= models.ForeignKey('Location', on_delete=models.CASCADE)
updated = models.DateField("Date Updated",null=True)
note =models.TextField()
def __str__(self):
return self.ipaddress[:50]
class Department(models.Model):
name= models.CharField(max_length=100, unique=True)
def __str__(self):
return self.name[:50]
class Location(models.Model):
description= models.CharField(max_length=100, unique=True)
def __str__(self):
return self.description[:50]
Run Code Online (Sandbox Code Playgroud)
管理员页面在这里:
from django.contrib import admin
from pages.models import Ipaddress, DeviceGroup, Location,Department,
from django_admin_listfilter_dropdown.filters import DropdownFilter, RelatedDropdownFilter
class IpaddressAdmin(admin.ModelAdmin):
prepopulated_fields = {'slug': ('ipaddress',)}
search_fields = ['ipaddress']
autocomplete_fields = ['department',]
list_display = ('ipaddress', 'machinename', 'user', 'department','location','updated',) …Run Code Online (Sandbox Code Playgroud)