打开终端创建一个虚拟环境
# 进入项目目录创建一个虚拟环境
cd /xxx/xxx/Documents/BaseVenv/
python3 -m venv venv(项目名称)
# 进入虚拟环境
source venv/bin/activate
# 退出虚拟环境
deactivate
下载django环境
# 下载2.2最新的版本
pip3 install django==2.2.*
# 下载超时的用下面方法
pip3 install django==2.2.* -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
# 下载django链接mysql数据库驱动
pip3 install mysqlclient
# 创建项目
django-admin startproject demo
# 进入创建的项目里
cd demo/
# 创建app
python3 manage.py startapp demoapp
# 创建模板
mkdir templates
# 创建存放静态文件的文件夹
mkdir static
配置django里的settings信息
# 在INSTALLED_APPS里增加新建的app名称
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'demoapp',
]
# 增加模板地址
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
# 配置数据库信息
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 需要连接的数据库
'NAME': 'mydb', # 数据库名称
'USER': 'root',
'PASSWORD': 'HEIxiaojie.',
'HOST': '127.0.0.1',
'PORT': '3306',
}
}
# django时区设置
TIME_ZONE = 'Asia/Shanghai'
# 设置语言
LANGUAGE_CODE = 'zh-Hans'
配置静态文件打开/demo/settings.py 133行
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static"),
]
配置主路由
# 项目文件下的urls.py
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('demoapp.urls'))
]
配置子路径
from django.urls import path
from . import views
urlpatterns = [
path('', views.index)
]
配置视图函数
from django.shortcuts import render
from django.http import HttpResponse
# Create your views here.
def index(requset):
return HttpResponse('欢迎会到django')
打开终端启动django后台
python3 manage.py runserver
访问http://127.0.0.1:8000/收到以下页面
进入mysq
# 查看当前数据库
show databases;
# 删除mydb
drop database mydb;
# 重现创建mydb
create database mydb default charset=utf8mb4;
# 切换数据库
use 数据库名称;
# 查看表
show tables;
# 查看表结构
desc xxx;(表名称)
# 创建成功后退出mysql
\q;
# 删除表里数据
delete from myadmin_user(表名) where id = 3;
在项目里配置models
from django.db import models
# Create your models here.
class Users(models.Model):
name = models.CharField(max_length=5)
email = models.EmailField()
phone = models.CharField(max_length=11)
age = models.IntegerField()
SEX_CHIOCES = [(1, '男'), (0, '女')]
sex = models.IntegerField(choices=SEX_CHIOCES)
# 用户创建时间
createtime = models.DateTimeField(auto_now_add=True)
# 更新时间
update = models.DateTimeField(auto_now=True)
数据迁移
# 打开终端进入虚拟环境下的项目里
cd /Users/shujie/Documents/venv/demo/
# 生成迁移文件
python3 manage.py makemigrations
# 执行数据迁移
python3 manage.py migrate
常见的坑
MacOs下载mysqlclient报错
1.jpg
# 解决方法: 分别执行下面两个命令
brew config openssl
brew info openssl
# 查看第二个命令中出现的一下信息
For compilers to find openssl@1.1 you may need to set:
export LDFLAGS="-L/usr/local/opt/openssl@1.1/lib"
export CPPFLAGS="-I/usr/local/opt/openssl@1.1/include"
# 在终端执行下面两句export
连接启动服务报错
# django.db.utils.OperationalError: (2003, "Can't connect to MySQL server on '127.0.0.1' (61)")
# 重启mysql服务
brew services restart mysql@5.7
网友评论