first_admin及组件的意义

# 关于pycharm 里的terminal
# manage.py是每个Django项目中自动生成的一个用于管理项目的脚本文件,需要通过python命令执行。manage.py接受的是Django提供的内置命令

python manage.py check app1  # 检查应用是否存在问题
python manage.py diffsettings  # 显示当前设置文件与Django的默认设置之间的差异
python manage.py startapp app_name  # 创建新的app。默认情况下,会在这个新的app目录下创建一系列文件模版,比如models.py、views.py、admin.py等等
python manage.py startproject project_name  # 新建工程。默认情况下,新目录包含manage.py脚本和项目包(包含settings.py和其他文件)
python manage.py flush  # 从数据库中删除所有数据。已应用的迁移不会被清除。只删除具体数据,不删除数据表

python manage.py makemigrations app1 app2  # 根据检测到的模型创建新的迁移。迁移的作用,更多的是将数据库的操作,以文件的形式记录下来,方便以后检查、调用、重做等等
python manage.py migrate  # 使数据库状态与当前模型集和迁移集同步
python manage.py runserver  # 启用Django为我们提供的轻量级的开发用的Web服务器
python manage.py shell  # 启动带有Django环境的Python交互式解释器,也就是命令行环境
# python console 是python 控制台,即python 交互模式
# 可以直接输入代码,然后执行,并立刻得到结果,因此Python交互模式主要是为了调试Python代码用的

# terminal 是终端,即命令行模式
# 命令行模式与系统的CMD(命令提示符)一样,可以运行各种系统命令

 

1.使用admin(手把手教你使用Admin搭建图书管理系统)

  1.打开pycharm 创建一个新的DjangoD:\pycharm项目\CRM_about_admin\bms

from django.db import models

# Create your models here.


class Author(models.Model):
    nid = models.AutoField(primary_key=True)
    name = models.CharField(max_length=32)
    age = models.IntegerField()  # 魔术方法

    def __str__(self):
        return self.name


class Publish(models.Model):
    name = models.CharField(max_length=32)  # 最大长度
    city = models.CharField(max_length=32)
    email = models.EmailField()  # email格式

    def __str__(self):   # 该方法后续会解释到
        return self.name


class Book(models.Model):

title = models.CharField(max_length=32)
price = models.DecimalField(max_digits=5, decimal_places=2)
pub_Date = models.DateField()
publisher = models.ForeignKey(to="Publish", on_delete=models.CASCADE, null=True)
authors = models.ManyToManyField(to='Author')

def __str__(self):
return self.title

上面的邮箱格式并不对,这样子是创建不了的

自此Admin已经完成配置,以下是进阶

2.Admin进阶

修改显示名

记得重启

 

 

posted @ 2019-04-11 16:06  pythonernoob  阅读(586)  评论(0)    收藏  举报