1.model实例
#!/usr/bin/python
# coding:utf-8
from __future__ import unicode_literals
from django.db import models
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
__author__ = 'klx'
# Create your models here.
class ImageQuerySet(models.QuerySet):
"""
model的queryset类,通过Image.object.image_count()调用类方法image_count()
"""
def image_count(self):
return self.count()
class Image(models.Model):
img_name = models.CharField(u"二维码名称", max_length=100, null=True, blank=True)
img_url = models.CharField(u"二维码路径", max_length=100, null=True, blank=True)
object = ImageQuerySet.as_manager()
class Meta:
# db_table 表名称 若不提供该参数,
# Django 会使用 app_label + '_' + module_name 作为表的名字
db_table = 'qr_code_image'
# 是该对象的一个可读性更好的唯一名字
verbose_name = u"二维码"
# 对象名字的复数
verbose_name_plural = u'二维码'
# 应用的名称
app_label = u'qr_code'
# 默认排序字段及排序方式,-号表示降序排序(递减),字符串 "?" 表示随机排序
# 用于得到一个对象列表的任何场合
ordering = ['pk']
def __unicode__(self):
return self.img_name
def all_msg(self):
"""
Image对象方法,实例化Image为img_obj,通过img_obj.all_msg()调用
:return:
"""
return self.img_name + " " + self.img_url
2.注意事项
1.项目建立时,需要创建django中的默认表:
需要先运行python manage.py migrate创建默认表 ,再创建自定义表python manage.py makemigrations [appname] -> python manage.py migrate [appname]