1,下载:
命令行: pip install django == 1.11.15
pip install -i或 源 django == 1.11.15
pycharm
settings 解释器 点 + 号 输入django 选择版本
2,创建 Django项目
1,命令行: (可能有的东西没配置)
cd 保存项目的目录
django - admin startporject 项目名
2,pycharm(可以自己都配置好)
filr(按钮)--> new project --选择django ---->选择解释器--创建django项目
3,启动项目
1,命令行:
切换到 manage.py的目录下
cd
python manage.py runserver #127.0.0.1:8000
python manage.py runserver 80 #127.0.0.1:8000
python manage.py runserver #0.0.0.1:8000
2.pycharm
配置项
点绿色三角启动
4,settings配置
1,静态文件
STATIC_URL= "/static/" #别名 ()
STATICFILES_DIRS = [
os.path.join(BASE_DIR,"static"),
] (可以创建多个)
2,TEMPLATES 模版 放HTML文件的地方
DIRS [os....] 自动生成的
3,注释 csrf中间件
MIDDLEWARE 第四行 csrf 注释掉这一行
4,数据库的配置
5, URL 和函数的对应关系 ---> urls.py
urlpatterns[
url(r"^admin/",admin.site.urls),
url(),
]
6.APP
1.创建APP
1,命令行:
python manage.py startapp APP名
2,pycharm
tools ---> run manage.py task --> startapp APP名
2.注册APP
在settings.py中
INSTALLED_APPS[
加上自己的APP名(如若pycharm创建 会自动添加 若是手动添加则按规范来
"APP名字.apps.App01Config")
]
7.使用mysql数据库
1.创建一个数据库
2.在srttings配置:
DATABASES = {
‘default‘: {
‘ENGINE‘: ‘django.db.backends.mysql‘, #引擎
‘NAME‘: ‘db66‘, #数据库名字
"USER": "root", #账户
"PASSWORD": "666666", #密码
"HOST": "127.0.0.1", #IP地址
"PORT": 3306, #端口号
}
}
3.告诉Django 使用pymysql 模块连接数据库
在settings.py 同级目录下的 __init__.py中写(下载好了 pymysql):
import pymysql
pymysql.install_as_MYSQLad()
4.建表 在APP文件夹里 models.py文件中写类(继承 models.Model)
class Userinfo(models.Model):
user = models.CharField(max_length=32)
pwd = models.CharField(max_length=32)
5.执行命令 (数据库迁移命令)
Tools ---> Run~~
python manage.py makemigrations #记录models.py中类是不是有变化 将变化的内容记录下来 记录到了 APP文件下 migrations 0001_initial.py里面
python manage.py migrate
8 .ORM
对象和关系型数据库的映射 通过操作对象的方式来操作数据库
映射关系;
类 ---> 数据表
对象 ---> 数据行
属性 ---> 字段
ORM 能做的事:
操作数据表 (建表,删表,改表)
操作数据行
ORM 的操作 :
from login import models
# 获取所有数据
models.Userinfo.objects.all() ---> Queryset类型
# 获取一条数据
models.Userinfo.objects.get(user="??",pwd="??")
get取不到数据或者取到多条数据的时候报错
#创建一条数据
models.Userinfo.objects.creat(user="??",pwd="??")
1.查
from login import models
# 获取所有数据
models.Userinfo.objects.all() ---> Queryset类型
models.Userinfo.objects.all().order.by(‘id‘)排序 升序
# 获取一条数据
models.Userinfo.objects.get(user="??",pwd="??")
get取不到数据或者取到多条数据的时候报错
属性:
pub_pbj.id
pub_obj.name
外键:
book_obj.id
book_obj.title
book_obj.publisher ---->书籍关联的出版社对象
book_obj.publisher_id ---->书籍关联的出版社对象的id
偶对多:
autho_obj.id
autho_obj.name
autho_obj.books ----->管理对象
autho_obj.books.all()
2.增
#创建一条数据
(新变量名)=models.Userinfo.objects.creat(name="新名字")
外键:
models.Book.objects.creeate(title = ‘新的书名‘,publisher_pub_obj)
models.Book.objects.create(title=‘新的名字‘,publisher_id=pub_obj.id)
多对多:
autho_obj=models.Author.objects.create(name=‘作者名字‘)
authon_obj = books.set([1,2,5])
3.删
#删除一个
models.Publisher.objects.get(id=1,name="xxx").delete()
-------------------------------------------------------
models.Publisher.objects.all().delete()
4,改
#普通修改
pub_obj.name = ‘新的名字‘
pub_obj.save()
-----------------------------------------------------------
book_obj.title = ‘新的书名‘
book_obj.publisher = pub_obj
book_obj.save()
9.form表单
1.method ="post" (form表单里面 必须带有这个) action="" ,这是请求方式 和提交数据的地址
2.所有的 input标签要有name属性, name的名字要和 上面ORM 的user pwd 相同
3.有一个input 的type="submit" 或者有一个button 按钮 就可以提交form表单
10. views.py 写函数
request 跟请求相关的内容
request.method 字符串 请求方式 GET/POST
request.POST post请求提交的数据 字典
request.GET get请求提交的数据
返回值
from django.shortcuts import HttpResponse,render,redirect
HttpResponse("字符串") -->页面显示的就是字符串
render(request,"模版文件的名字") -->渲染你的HTML文件返回给浏览器
redirect("/要跳转的URL/") --->重定向 告诉浏览器再向浏览器发次GET请求
原文地址:https://www.cnblogs.com/liuafan/p/9601302.html