Django web 开发(四) - Django项目实践(一)-创建新APP

项目:管理系统

以前的操作全部舍弃,我们从头复习操作一遍

新建项目

django-admin startproject myproject

在这里插入图片描述
在这里插入图片描述

创建app

django-admin startapp employee_management

在这里插入图片描述

注册app

在这里插入图片描述

连接数据库

创建数据库

create database my_project DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
DATABASES = {
    'default':{
        'ENGINE':'django.db.backends.mysql',
        'NAME':'my_project',
        'USER':'root',
        'PASSWORD':'Syz123!@#',
        'HOST':'127.0.0.1',
        'PORT':'3306',
    }
}

在这里插入图片描述

设计表结构

修改employee_management下的models.py

from django.db import models

# Create your models here.
class Department(models.Model):
    """部门表"""
    title = models.CharField(max_length=32, verbose_name='标题')


class UserInfo(models.Model):
    """员工表"""
    name = models.CharField(max_length=16, verbose_name="姓名")
    password = models.CharField(max_length=64, verbose_name="密码")
    age = models.IntegerField(verbose_name="年龄")
    account = models.DecimalField(verbose_name="账户余额", max_digits=10, decimal_places=2, default=0)
    create_time = models.DateTimeField(verbose_name="入职时间")
    
    # 外键约束
    # to 表示与哪张表关联
    # to_field 表示表中的哪一列
    # 在django中,数据表中的名称自动加上_id,也就是depart_id
    # on_delete=models.CASCADE 表示级联删除(删除部门,部门下的所有员工都会被删除)
    depart = models.ForeignKey(to="Department", to_field="id", on_delete=models.CASCADE, verbose_name="部门")
    # on_delete=models.SET_NULL, null=True, blank=True 表示置空(删除部门,部门下的所有员工的部门字段置为空)
    #depart = models.ForeignKey(to="Department", to_field="id", on_delete=models.SET_NULL, null=True, blank=True)

    gender_choices = (
        (1, "男"),
        (2, "女"),
    )
    gender = models.SmallIntegerField(choices=gender_choices,verbose_name="性别")

生成数据库表

python3 manage.py makemigrations
python3 manage.py migrate

在这里插入图片描述
在这里插入图片描述
查看Mysql
在这里插入图片描述
在这里插入图片描述

静态文件管理

将以前做过的static目录拷贝到项目根目录一份
在这里插入图片描述

新建模板目录templates
在这里插入图片描述
修改settings.py
在这里插入图片描述
在这里插入图片描述

别忘了导入os

import os

猜你喜欢

转载自blog.csdn.net/qq_43139145/article/details/128715651
今日推荐