python manage.py shell
from mysite import models
dir(models)
#Host中所有的值
models.Host.objects.all()
#系统类型为linux
models.Host.objects.filter(system_type='linux')
#系统类型为linux且主机名为lmz,列表的第0个值
models.Host.objects.filter(system_type='linux',hostname='lmz')[0]
#系统类型为linux且主机名包含lmz
models.Host.objects.filter(system_type='linux',hostname__contains='lmz')
#只查找一个唯一的值
models.Host.objects.get(system_type='linux',hostname__contains='lmz')
#查找主机id大于1的值
models.Host.objects.filter(id__gt=1)
#查找主机id小于1的值
models.Host.objects.filter(id__lt=1)
#查找id在1,2,3的值
models.Host.objects.filter(id__in=[1,2,3])
#创建一个主机
models.Host.objects.create(
... hostname='leo-pc',
... ip_addr='192.168.199.168',
... port=3389,
... system_type='linux',
... idc_id = 1,
... create_date = datetime.datetime.now())
#主机变量
h = models.Host.objects.get(hostname='leo-pc')
#主机添加到两个主机组
h.groups.add(1,2)
h.groups.remove(1,2)
all_groups = models.HostGroup.objects.all()
h.groups.remove(*[i.id for i in all_groups])
#返回object实例
h.save()
#把hostname 改为 limengbo-pc
h = models.Host.objects.get(id=4)
h.hostname = "limengbo-pc"
h.save()
#把所有主机的端口改为2002
models.Host.objects.filter().update(port='2002',system="linux")
#删除ID为4的主机
h = models.Host.objects.get(id=4)
h.delete()
#多表查询
a = models.UserProfile.objects.last()
a.hosts.select_related()
a.host_groups.select_related()