Django项目的创建、Admin后台系统以及数据库迁移
PyCharm新建一个Django项目:
新建项目 —> Django项目 —> 选择创建位置、项目名、应用名(应用名与项目名不能相同) —> 选择创建Create
创建项目后,检查文件 setting.py 文件中的配置,如果出现 “ 'DIRS': [BASE_DIR/ 'templates'] ” 语句,一定要进行修改!!!否则运行时会报错。
对建立的goods应用进行创建和注册
view.py 文件:
from django.http import HttpResponse# Create your views here.def index(request):"""商品应用首页视图"""return HttpResponse("商品首页!")def detail(request):"""商品应用详情页视图"""return HttpResponse("商品详情页!")
demo项目的 urls.py 文件:
from django.contrib import admin
from django.urls import path,includeurlpatterns = [path('admin/', admin.site.urls),path('goods/',include('goods.urls')),
]
应用goods中也创建urls.py文件:
from django.urls import path
from goods.views import index,detailurlpatterns = [path('index/', index),path('detail/', detail)
]
启动项目,在浏览器中分别访问127.0.0.1:8000/goods/index、127.0.0.1:8000/goods/details,效果如下:
Admin后台管理系统(可插拔)
浏览器访问路径:127.0.0.1:8000/admin
Admin系统是创建项目时自带的,不需要单独创立,并且是可插拔的,进入后台管系统必须要有超级管理员身份,而超级管理员的信息默认存储在SQLite数据库的auth-user表中,,而这张表一开始是空白的没有信息的,所以需要在表中加入对应的超级管理员信息后才能登陆访问 Admin 系统
1. 连接SQlite数据库
选择右侧的Database选项 —> 点击 “+” 号 —> 选择 Data Source —> 选择SQlite
Name 为连接名,可自己输入,首次连接需要下载驱动Driver,直接点击黄色的Download后PyCharm即可自动下载,,File选择项目中的 db.sqlite3 文件,URL会自动生成,,点击Test Connection 测试连接是否成功(出现对号),成功后点击确定,即可在右侧看到数据库的具体信息,并对数据库信息进行修改(可点击右侧的Database进行隐藏/展开)
执行数据库迁移(在manage.py文件所在目录下执行)
这一步为必须步骤,可防止在后续操作中出现一些奇奇怪怪的小问题
分别执行语句:
生成迁移文件,即生成sql语句
python manage.py makemigrations
执行迁移文件,即执行sql语句
python manage.py migrat
创建超级用户(python manage.py createsuperuser):
只有用户名和密码为必须输入的选项
密码输入时会隐藏,不会显示出来!!!
再次回到浏览器的登录界面,使用刚刚设置的密码登录即可进入:
Admin系统默认语言为为英文,可通过以下方式设置中文和时区:
在文件 setting.py 中设置中文
方法1:直接更改设置
方法2:设置中间件(最后一行):
添加一个应用和模型:
创建模型类:
在goods子应用的models.py文件中添加模型类
from django.db import models
# Create your models here.
class Goods(models.Model):# name 字符类型 最大长度 verbose_name:别名name = models.CharField(max_length=50, verbose_name='商品名') # 显示的名称 别名price = models.DecimalField(max_digits=10, decimal_places=2, verbose_name='价格')
再次执行数据库迁移的两条指令后,数据库中会生成对应的表
注册模型类:
在应用的admin.py文件中使用admin.site.register()注册模型
from django.contrib import admin
# Register your models here.# 注册 Goods 模型类
# 语法 admin.site.register(模型名)
from goods.models import Goods
admin.site.register(Goods)
效果如下:
修改模型的显示名称:
修改 models.py 文件内容如下:
from django.db import models
# Create your models here.
class Goods(models.Model):# name 字符类型 最大长度 verbose_name:别名name = models.CharField(max_length=50, verbose_name='商品名') # 显示的名称 别名price = models.DecimalField(max_digits=10, decimal_places=2, verbose_name='价格')# 更改模型的显示名称class Meta:verbose_name = '商品' # 模型名称(单数)verbose_name_plural = verbose_name # 模型名称(复数)
修改应用的显示名称:
在goods应用的 __init__.py 文件中添加如下代码:
default_app_config = 'goods.apps.GoodsConfig'
在goods/apps.py文件中使用verbose_name设置应用的名称
from django.apps import AppConfig
class GoodsConfig(AppConfig):
name = 'goods'
verbose_name = '商品信息'
效果如下:
之后就可以在admin管理系统中项目进行操作。
Django项目的创建、Admin后台系统以及数据库迁移相关推荐
- IIS或Apache部署Django项目时,Admin后台管理CSS样式丢失?
运行环境: Windows 10 专业版 64位 Python27 Django1.11 Mysql5.7 IIS 10 或 Apache24 丢失CSS样式后的界面: 正确加载CSS样式的界面: 通 ...
- django (三) admin后台系统
admin后台系统 1. 安装MySQL 1,安装mysql: sudo apt install mysql-server (安装过程中输入密码并牢记) 2,安装后进入mysql: mysql -u用 ...
- django admin后台系统
Django中默认集成了后台数据管理页面,通过简单的配置就可以实现模型后台的Web控制台. 管理界面通常是给系统管理员使用的,用来完成数据的输入,删除,查询等工作. 使用以下models来示范admi ...
- Django框架学习——1—(虚拟环境搭建、MVC思想与Django的MVT区别、Django项目的创建、运行Django项目、项目结构介绍)
1.虚拟环境搭建 创建新的Django框架的虚拟环境: 注意:如果没有pipenv指令,需要安装这个支持库,同时需要记住配置它的环境变量,否则虚拟环境会安装在默认文件夹下(一般是C:\Users\Ad ...
- Django项目的创建Django项目的修改配置文件
目录: 创建Django项目 Django的操作 django项目和子应用各文件作用 修改Django项目的配置 path() 函数 创建Django项目 C:\Users\35211>d: 先 ...
- 怎么创建python django项目_创建Django项目图文实例详解
本文实例讲述了创建Django项目的方法.分享给大家供大家参考,具体如下: 创建Django项目 创建一个HelloDjango项目 GitHub地址:https://github.com/liang ...
- admin后台管理及数据库表管理
admin 后台数据库管理 django 提供了比较完善的后台管理数据库的接口,可供开发过程中调用和测试使用 django 会搜集所有已注册的模型类,为这些模型类提拱数据管理界面,供开发者使用 使用步 ...
- 计算机毕业设计Python+Django的监控管理系统(源码+系统+mysql数据库+Lw文档)
项目介绍 在网络越来越发达的今天,监控软件也越来越多.监控程序已经成为人们日常网络生活必不可少的程序.老人小孩自己,没有时间陪伴,我们需要监控,厂区操作间,我们可以通过监控查看自己所需要的信息,本论文 ...
- python创建django项目语句_简单了解Django项目应用创建过程
创建应用前必须先进入虚拟环境 workon npy007 创建个文件夹 madir test cd test django-admin strartproject djdemo djdemo为项目名 ...
最新文章
- AlphaGo之父DeepMind再出神作,PrediNet原理详解
- 学了js php就简单,学习笔记:JS + 简单的PHP实现用户注册及登录
- canvas初体验之加载图片
- postgresql批量插入数据脚本_每日踩坑 2020-11-04 PostgreSQL 批量插入数据
- 如何使用命令行编译运行java文件(一个或多个),找不到主类解决
- Vue父子组件传递数据
- java 重载 调用指定_java 方法重载的时候,同一个类,父子类,调用哪个方法的问题...
- debian下,下载linux内核
- java实现画笔的画圆与矩形功能_JAVA怎么画出一个任意大小的圆形和矩形
- python qt教程视频 下载_PyQt5开发与实战教程,视频教程下载
- 计算机上的24点游戏怎么玩,趣味算数二十四点游戏规则怎么玩技巧
- L W V th t发音
- 第八届山东省赛题 I Parity check 【找规律】
- 盘点3大智能家居系统|苹果HomeKit、亚马逊Alexa、谷歌Home?
- Windows Terminal+zsh
- 三种求最短路算法基本描述及实现(C++)
- 【Python+C#】手把手搭建基于Hugging Face模型的离线翻译系统,并通过C#代码进行访问...
- Java项目生成静态页面
- python三门问题_三门问题之python解答
- 绩效考核管理系统使用说明1
热门文章
- 用MATLAB绘制国债NSS模型,Matlab在数字信号处理中的运用.ppt
- 【Kernel】如何从kernel中获取cred结构体中的value
- 【Java设计模式】简单学桥接模式——来杯大杯加奶不加糖咖啡
- rabbitmq启动后,注意将No access设为
- 最强神作!Crysis深度剖析与优化指南(1-8)
- 3月第2周业务风控关注 |上海市网信办依法对“华尔街见闻”作出行政处罚
- 11.(地图数据篇)OSM数据如何下载使用
- 基于Android的谷歌地图地理围栏功能开发
- NOIP练习赛题目1
- 《机器学习》--概述