Django -->admin后台(后台管理可以直接往数据库添加数据)
2024-08-31 08:32:31
一、使用pymysql时,必须加这两行(#如果使用mysql的数据库,请进行伪装 pymysql伪装为MySQLdb)
import pymysql
pymysql.install_as_MySQLdb() #如果使用mysql的数据库,请进行伪装 pymysql伪装为MySQLdb
二、编辑数据库内容 (路径:/学习/接口自动化/mjz/user/models.py)
from django.db import models # Create your models here. class Category(models.Model):
name=models.CharField(verbose_name="分类名",max_length=50,unique=True)
create_time=models.DateTimeField(verbose_name="创建时间",auto_now_add=True)
update_time=models.DateTimeField(verbose_name="更新时间",auto_now=True)
is_delete=models.BooleanField(verbose_name="删除",default=False) class Meta:
db_table = 'category' #
ordering = ['create_time']
verbose_name="文章分类"
verbose_name_plural=verbose_name def __str__(self):
return self.name class Article(models.Model):
title = models.CharField(verbose_name='文章标题',max_length=100,db_index=True)
desc = models.CharField(verbose_name='描述',max_length=100,blank=True,null=True,default='这个文章没有描述')
content = models.TextField(verbose_name='文章内容')
img = models.ImageField(verbose_name='文章图片',upload_to='article_img',default='images/1.jpg') #需要pip install pillow
recommend = models.BooleanField(verbose_name='是否推荐',default=False)
category = models.ForeignKey(Category,verbose_name='分类',on_delete=models.DO_NOTHING,
db_constraint=False)
create_time = models.DateTimeField(verbose_name='创建时间', auto_now_add=True)
update_time = models.DateTimeField(verbose_name='修改时间', auto_now=True)
is_delete = models.BooleanField(verbose_name='是否删除', default=False) #models.CASCADE#guanl cascade
# db_constraint 不会真正在数据库里面建立外键
class Meta: #首页 5
db_table = 'article' #
ordering = ['create_time']
verbose_name = '文章'
verbose_name_plural = verbose_name def __str__(self):
return self.title 三.执行数据库,创建表
python manage.py makemigrations
python manage.py migrate 四、后台管理
1、(创建后端管理员)
python manage.py createsuperuser 创建用户名字 密码和邮箱
2、在admin导入数据表:(/学习/接口自动化/mjz/user/admin.py)
from django.contrib import admin # Register your models here. from . import models admin.site.register(models.Category)
admin.site.register(models.Article)
3、url配置(/学习/接口自动化/mjz/mjz/urls.py)
from django.contrib import admin
from django.urls import path
from user.views import index urlpatterns = [
path('admin/', admin.site.urls),
path('index/', index),
]
最新文章
- sql union和union all的用法及效率
- UML常用图
- python 学习笔记十六 django深入学习一 路由系统,模板,admin,数据库操作
- 【bzoj1502】 NOI2005—月下柠檬树
- 翻译 - NodeJS错误处理最佳实践
- ChannelFactory.Endpoint 上的地址属性为空。ChannelFactory 的终结点必须指定一个有效的地址。
- JS生成二维码,支持中文字符
- 终于懂了:Delphi的函数名不是地址,取地址必须遵守Object Pascal的语法(Delphi和C的类比:指针、字符串、函数指针、内存分配等)good
- 详解CMS垃圾回收机制
- JavaEE开发之SpringBoot工程的创建、运行与配置
- 摘抄--全面理解面向对象的 JavaScript
- 《C#图解教程》 总览
- Angular 学习笔记 ( 链接服务器 )
- mysql substr() 函数
- Not saving crash log because we have reached the limit for logs to store on disk.解决办法
- Spring中的接口BeanFactory和FactoryBean的学习
- 微信小程序 canvas 字体自动换行(支持换行符)
- 【Java】 剑指offer(19) 正则表达式匹配
- Web视频播放之video.js
- 50_流程控制函数-case结构
热门文章
- ui自动化chrome文件上传操作
- 【springboot spring mybatis】看我怎么将springboot与spring整合mybatis与druid数据源
- String类,string类的特点
- CentOS7设置环境变量
- pat 乙级 1015. 德才论 (25) c++
- 百道Python面试题实现,搞定Python编程就靠它
- Linux的五种IO模型及同步和异步的区别
- 从零搭建一个SpringCloud项目之Feign搭建
- Java内存模型和ConcurrentHashMap 1.7源码分析
- Javascript-什么是递归?