一、安装django
提前安装好python pycharm并配置环境变量
https://www.djangoproject.com/download/
pycharm里输入命令进行安装
可在命令行输入命令检查是否安装成功,安装有问题可百度自行解决。
二、创建项目
用python打开一个文件夹
在pycharm里输入
django-admin startprojcet projcetName(projectName是要创建的项目名称)
就会在该路径下创建一个django应用
再用pycharm open这个项目
项目就创建成功了
接下来了解下项目结构:
1.django_03: 项目的容器。
2.manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。
3.django_03/init.py: 一个空文件,告诉 Python 该目录是一个 Python 包。
4.django_03/asgi.py: 一个 ASGI 兼容的 Web 服务器的入口,以便运行你的项目。
5.django_03/settings.py: 该 Django 项目的设置/配置。
6.django_03/urls.py: 该 Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"。
7.django_03/wsgi.py: 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。
配置数据库
手动创建需要的数据库
打开settings.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'MySQL数据库名',
'USER':'MySQL用户名',
'PASSWORD':'MySQL密码',
'HOST':'localhost',
'PORT':'3306',
'OPTIONS': {
"init_command": "SET foreign_key_checks = 0;",
}
}
}
在_init_.py写入两行代码
import pymysql
pymysql.install_as_MySQLdb()
三、在项目下创建App
python manage.py startapp appName(要创建的app名)
激活应用
在settings.py下加入你创建的app
创建模型
在models.py写入
from django.db import models
# Create your models here.
class Grades(models.Model):
gname = models.CharField(max_length=20) # 班级名称
gdate = models.DateTimeField() # 日期
gboynum = models.IntegerField()
ggirlnum = models.IntegerField()
isDelete = models.BooleanField(default=False)
class students(models.Model):
sname = models.CharField(max_length=20)
sgender = models.BooleanField(default=True)
sage = models.IntegerField()
scontent = models.CharField(max_length=20)
sgrade = models.ForeignKey('Grades', on_delete=models.CASCADE) # 班级是外键,关联Grades类
isDelete = models.BooleanField(default=False)
链接: 参考1.
该代码取自这个博客
依次输入三个命令
python manage.py makemigrations
python manage.py sqlmigrate appname 0001
python manage.py migrate appname 0001
然后进入python shell 并在两张表各创建一条数据测试
python manage.py shell
from myApp.models import Grades,students
from django.utils import timezone
from datetime import *
grade1=Grades()
grade1.gname="python1"
grade1.gdate=datetime(year=2020,month=12,day=16)
grade1.ggirlnum=3
grade1.gboynum=11
grade1.save()
stu=students()
stu.sname="wwf"
stu.sgender=False
stu.sage=20
stu.scontent="haha"
stu.sgrade=grade1
stu.save
创建超级用户
python manage.py createsuperuser
这时候出现了问题
链接: 参考2.
解决了这个问题
把0001这个文件删掉
然后依次输入命令
python manage.py makemigrations
python manage.py migrate
makemigrations 创建了0001_initial.py文件,生成迁移文件还未生成数据库表,
执行migrate迁移后就会生成数据库表,包括创建超级用户所需要的表。
查看数据库
现在可以创建超级用户
python manage.py createsuperuser
输入相关信息 创建超级用户
输入完毕后 运行测试
python manage.py runserver 127.0.0.1:8000
地址栏输入admin
输入刚刚创建的superuser进行登录
成功进入
将settings.py中的
LANGUAGE_CODE = 'en-us'
TIME_ZONE = 'UTC'
修改为
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
该页面即可变为中文
修改admin.py
from django.contrib import admin
# Register your models here.
# 引入两张表
from .models import Grades, students
# 注册
admin.site.register(Grades)
admin.site.register(students)
引入两张数据库表
再次测试
后续学习可参考菜鸟.
该博客记录使用django创建web应用,及其遇到的问题解决,如有侵权请联系删除。