#django版本问题
1..x 2.x 3.x(直接忽略)
1.x 和2.x本身差距也不大 我们讲解主要以1.x为例 会讲解2.x区别 公司之前用的1.8 慢慢过渡到了1.11版本 有一些项目用的2.0
#django安装
pip3 install django==1.11.11
在Python中 设置里找jango 不要直接安装 需要选择1.11.11版本再安装
如果已经安装了其他版本 无需自己卸载 直接重新装会自动卸载安装新的
验证是否成功的方式一:终端输入django-damin看看有没有反应
如果版本过旧可以换源 使用阿里源或者清华源:
pip install django==1.11.11 -i https://mirrors.aliyun.com/pypi/simple/ # 或者 pip install django==1.11.11 -i https://pypi.tuna.tsinghua.edu.cn/simple/
django基本操作
一、#命令行操作
1.创建django项目
你可以先切换到对应的盘如何再创建
django-admin startproject mysite(项目名) 创建好之后应该是在c盘下
django-admin startproject mydjangoproject
创建好以后搜索django出来是这样的:
mysite文件夹
manage.py
mysite文件夹
__init__.py
settings.py
urls.py
wsgi.py
#pycharm操作
示例:https://blog.csdn.net/ydydyd00/article/details/80746099
pycharm操作
1.new project 选择左侧第二个django即可(在安装django后之后 且关闭了其他django)
选择是否用虚拟环境,路径需要宣导和环境变量中路径一致,一直点到有Python.exe为止
2.启动
点击manage.py,在右上角下拉选择Edit configurations出现框,在Parameters写runserver 0.0.0.0 8000 再选择相对于的解释器,点击Apply,再点击OK
2.点击绿色小箭头启动即可
3.创建应用app
1.pycharm提供的终端直接输入完整命令:Python3 manage.py startapp app01(APP的名字,需要见名知意)
2.pycharm tools run manage.py task提示(输入startapp app01 前期不建议使用)
创建server edit confl......
命令行与pycharm创建的区别
1.命令行创建不会自动有templatew文件 需要你自己手动创建而pycharm会自动帮你创建并且还会自动在配置文件中配置对应的路径
#pycharm创建
TCMPLATES=[
{
'BACKEND':'django.template.backends.django.DjangoTemplates',
'DIRS':[os.path.join(BASE_DIR,'templates')]
}
#命令行创建
TEMPLATES=[
{
'BACKEND':'django.template.backends.django.DjangoTemplates',
'DIRS':[],
]
对比之下 命令行创建少了一部分 也就意思为你在用命令行创建django项目的时候不单单需要创建templates文件夹还需要去配置文件中配置路径:'DIRS':[os.path.join(BASE_DIR,'templates')]
2.启动django项目
创建好之后一定要先切到项目目录下:cd/mysite
通过manage.py启动再terminal中敲
命令行启动①python3 manage.py runserver http://127.0.0.1:8000 #django端口号是8000
或者python3 manage.py runserver 8080默认是监听本机127.0.0.1(别人访问不到的方式),以后再项目上线时用0.0.0.0的比较多 ctrl+c是停止
pycharm启动② 右上角 点开写项目名 监听端口号 监听地址 ✓上中间第一个
django中默认情况下socket用的是wsgiref(自己写的web框架)
3.创建应用app
Python3 manage.py startapp app01(APP的名字,需要见名知意)
应用:django是一款专门用来开发APP的web框架,不是手机的那种APP,django框架类似于是一所大学,APP就类似于大学里面的各个学院,一个APP就是一个独立的功能模块
停掉:shift+c
4.创建的应用一定要去配置文件中注册 创建出来的应用第一步先去配置文件中注册 其他的先不要做 在settings.py 配置文件中 找到INSTALLED_APPS=.....中增加'app01.apps.App01Config'(全写)或者'app02'(简写)
ps:你在用pycharm创建项目的时候 pycharm可以帮你创建一个APP并且自动注册
主要文件介绍
--mysite 项目文件夹
--mysite 文件夹
--settings.py 配置文件
--tests.py测试相关 不用管
--wsgi.py wsgiref模块(不考虑)
--manage.py django的入口文件
--db.sqlite3 django 自带的sqlite3数据库(小型数据库 功能不是很多还有bug)
-day 60 项目名
--app01 文件夹app的名字
--admin.py django后台管理
--apps.py 注册使用
--migrations 文件夹 数据库迁移记录
--wsgi.py wsgi服务器的配置,以后上线了才改
--models.py 数据库相关的 模型类(orm)
--urls.py 路由与视图函数对应关系(路由层)
--views.py视图函数 重点
--templates 模板文件
--manage.py 启动项目创建app 各种命令的操作都跟他有关
二、
django小白必会三板斧
导入:from django.shortcuts import HttpResponse,render,redirect
HttpResponse 返回字符串类型的数据
例如:
def index(request):
#param request:请求相关的所有数据对象 比你之前的env更加牛
#return:
return HttpResponse("你好啊 我是django")
render 返回html文件的
return render(request,'myfirst.html') #自动去tempaltes文件夹下帮你查找文件 前 提是有添加到配置文件中
例如:
def index(request):
username_dict={'username':'zhu','age':18}#视图函数必须要要接受一个形参request
#第一种传值方式
return render(request,'传值的目的文件01 ab-render.html',{'data':user_dict,'data':123})
就是将user_dict传给ab_render页面 页面上通过data就能拿到字典数据
#第二种方式:当你要传的数据特别多的时候
def index(request):
username_dict={'username':'zhu','age':18}
return render(request,'01 ab_render.html',locals())
Locals会将所在的名称空间中所有的名字全部传递给HTML页面
redirect 重定向
return redirect('http://www.baidu.com/') 其他url需要写全
retunrn redirect('/home/')自己的不用写ip和端口
配置文件讲解:
路由简单入门:
1.地址和视图函数的映射关系---urls.py文件
urlpatterns列表
2.现阶段使用
复制一行 改一下第一个参数(正则表达式),第二个参数是视图函数内存地址(需要导入相对应的文件信息例如:from app01 import views)
一、视图函数
request必须传,约定俗称都用request
request是个对象,请求的对象,请求过来是符合HTTP请求协议的数据包(字符串)
视图函数一般是写在views.py下(可以不放在里面 )
def index(request):
return HttpResponse('ok')
1. 通过print(request.method) 来判断请求是post还是get请求
例如:
def index(request):
print(request.method)
return HttpResponse('ok')
2.请求参数 get请求这种形式:http://127.0.0.1/index?name=zz&age=18
print(request.GET) 也可以把他当成字典
#print(request.GET.get('name'))
#print(request.GET.['name']) 可能会报错推荐使用上一个
#print(request.GET.get('age'))
3.post形成提交的数据(数据放在请求体中 ,body体)
print(request.POST) 把它结果当成字典
二、视图函数之响应对象
三件套:
1.HTTPResponse:返回字符串形式
2.返回模板文件:render 本质是函数 函数返回值还是HTTPReponse的对象
3.重定向:redirect
静态文件配置static
1.js.css这些静态文件
2.需要在setting中配置
3.使用步骤
1. 先在项目根路径下 创建static再在setting.py中配置
#静态文件配置相关
STATIC_URL='/static/'
#再配一个STATICFILES_DIRS=列表(列表内写路径),单词一个字母都不能错
STATICFILES_DIRS=[
os.path.join(BASE_DIR,'static')
]
2.在static中新建img,js,css文件夹以后相应的目录方相应的目录
3.在模板中最上面引入使用
src="/static/js/jquery.min.js"
标签:manage,--,创建,app,py,request,django,流程 From: https://www.cnblogs.com/97zs/p/17850643.html