Django 模型和Admin站点管理(三)

一、定义模型

(1) 创建模型类,必须要继承自 models.Model

python 复制代码
from django.db import models

# Create your models here.
#设计数据库
#创建模型
class UserModel(models.Model):
    name=models.CharField(max_length=30) #对应于SQL name varchar(30)
    age=models.PositiveIntegerField() #非负数

#数据迁移

(2) 数据迁移,刷新数据库,查找到user_usermodel表,并打开,添加数据

  1. python manage.py makemigrations

  2. python manage.py migrate

二、Admin 后台管理

(1)编写admin.py文件

python 复制代码
from django.contrib import admin

from user.models import *   #导入模型包

# Register your models here.

#后台管理系统使用

#1.注册对应的模型
admin.site.register(UserModel)
#2.创建超级管理员的账号和密码
# 在终端写:python manage.py createsuperuser

#3.根据路由urls.py中添加页面路由

(2)在终端 创建超级管理员的账号和密码 amdin/admin

(3) 打开数据库auth_user表查看

(4)启动项目,访问页面http://127.0.0.1:8000/admin,进行登录

(5)登录成功后,查看到用户模型User models

(6)添加这个表的数据

(7)添加成功后页面

(8) 可以修改或删除

(9)查看数据库表的数据是否同步

三、展示数据列表

(1)在views.py文件中编写视图函数

python 复制代码
from django.shortcuts import render

# Create your views here.
#视图函数
from user.models import UserModel


def index(request):
    #获取所有的数据
    users=UserModel.objects.all()
    return render(request,template_name='index.html',context={'users':users})

(2)模板文件(html文件)

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>主页</title>
    <style type="text/css">
        li{
            list-style: none;
            line-height: 30px;
        }
    </style>
</head>
<body>
<div>
    <h1>显示学生信息</h1>
    <ul>
        {% for user in users %}
        <li>{{ user.name }} &nbsp;&nbsp;{{ user.age }}</li>
        {% endfor %}
    </ul>
</div>
</body>
</html>

(3)在子应用user配置urs.py文件

(4)主路由配置urls.py

效果: http://127.0.0.1:8000/user/index/

相关推荐
m0_748238636 分钟前
Spring Boot项目接收前端参数的11种方式
前端·spring boot·后端
紫雾凌寒33 分钟前
计算机视觉 |解锁视频理解三剑客——TimeSformer
python·深度学习·神经网络·计算机视觉·transformer·timesformer
jay丿1 小时前
Django模板系统深入
数据库·django·sqlite
菜鸟阿达1 小时前
spring boot 2.7 + seata +微服务 降级失败问题修复
spring boot·后端·微服务
程序员杰哥1 小时前
测试用例详解
自动化测试·软件测试·python·功能测试·测试工具·职场和发展·测试用例
清河__1 小时前
【Go】十七、grpc 服务的具体功能编写
开发语言·后端·golang
张声录11 小时前
国密算法Sm2工具类--golang实现版
开发语言·后端·golang
go54631584657 小时前
本地部署 GitHub 上的 Python 人脸识别项目
开发语言·python·github
FreakStudio8 小时前
手把手教你用 MicroPython 玩转幻尔串口舵机,代码+教程全公开
python·嵌入式·大学生·面向对象·技术栈·电子diy·电子计算机
tekin8 小时前
基于 Python 开发在线多人游戏服务器案例解析
服务器·python·游戏·在线多人游戏服务器