django-admin

Posted p0st

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了django-admin相关的知识,希望对你有一定的参考价值。

1.创建orm对应关系(创建数据库)

from django.db import models
class MyCharField(models.Field):
    """
    自定义的char类型的字段类
    """

    def __init__(self, max_length, *args, **kwargs):
        self.max_length = max_length
        super(MyCharField, self).__init__(max_length=max_length, *args, **kwargs)

    def db_type(self, connection):
        """
        限定生成数据库表的字段类型为char,长度为max_length指定的值
        """
        return char(%s) % self.max_length


# Create your models here.
class Person(models.Model):
    pid = models.AutoField(primary_key=True)  # 主键
    name = models.CharField(max_length=32, db_column=username, unique=True, verbose_name=姓名,help_text=填写有效姓名)  # varchar(32)
        # db_column:在数据库里面的name属性的名字,但是在类里面还是叫name
        # verbose_name:在django admin里面的名称
        # help_text:在django admin里面的提示
    age = models.IntegerField(null=True, blank=True)
        # null=ture 在数据库里面可以为空
        # blank=true 在django娇艳的时候可以为空
    birth = models.DateTimeField(auto_now=True)
        # auto_now 每次修改都修改为当前日期
    phone = MyCharField(max_length=11, null=True, blank=True)
    gender = models.BooleanField(default=True, choices=((True, ), (False, )))
        # choices:在django admin里面该字段可以显示下拉框选择。数据库中1为True,2位False

    def __str__(self):
        return "-".format(self.pk, self.name)

    class Meta:
        # 数据库中生成的表名称 默认 app名称 + 下划线 + 类名
        db_table = "person"   # django默认生成的数据库名字都是app_类名的形式。该参数可以定制名字

        # admin中显示的表名称
        verbose_name = 个人信息   # 在django admi

        # verbose_name加s
        verbose_name_plural = 所有用户信息

        # 联合索引
        index_together = [
            ("name", "age"),  # 应为两个存在的字段
        ]

        # 联合唯一索引
        unique_together = (("name", "age"),)  # 应为两个存在的字段

2.django admin

1.创建超级用户
    python manage.py createsuperuser 
    输入账号密码,密码要大小写+数字

2.注册
   在app下的admin.py中注册
   from django.contrib import admin
   from appname import models
   admin.site.register(models.persion)

3.登录http://127.0.0.1:8000/admin/login/?next=/admin/

4.找到对应的表做增删改查

 

以上是关于django-admin的主要内容,如果未能解决你的问题,请参考以下文章