【Python_Django】Django_高级的Python Web框架的基本使用
Django是一个高级的Python Web框架,可以快速开发安全和可维护的网站。
由经验丰富的开发者构建,Django负责处理网站开发中麻烦的部分,可以专注于编写应用程序,而无需重新开发
准备环境
win64系统
python 3.9
Django 4.2.6
pycharm 2021.2.1
创建Django项目
1、新建项目-Django
加载Django
2、生成文件
3、终端输入
# 如果没有进入虚拟环境就先输入 activate+虚拟环境名称 # 运行Django项目 python manage.py runserver # 报错:ImportError找不到指定的模块,激活base环境再输入运行,即可运行成功 conda activate python manage.py runserver # 报错:You have 18 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions. Run 'python manage.py migrate' to apply them. # 将生成的迁移文件撤回应用后再运行 python manage.py migrate python manage.py runserver
4、运行成功后,浏览器打开 : http://127.0.0.1:8000/
日志
界面
5、连接数据库
打开数据库
6、创建app
终端输入ctrl+c终止运行
# 创建app python manage.py startapp djangoApp
创建完成,app在项目文件夹内,与同名子应用处于同一级
在djangoProject的settings.py中注册app [INSTALLED_APPS 中添加创建的app]
7、搭建页面
1) templates 目录下新建index.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>index</title> </head> <body> <H2>welcome to index.html demo test</H2> </body> </html>
2) djangoApp目录下的 views.py
from django.shortcuts import render from django.views.generic import View # Create your views here. class index(View): def get(self, request): return render(request, 'index.html')
3)djangoProject目录下的 urls.py
from django.contrib import admin from django.urls import path from djangoApp.views import index urlpatterns = [ path('admin/', admin.site.urls), path('index/', index.as_view()), ]
4) 终端执行<python manage.py runserver> ,运行程序后进入 http://127.0.0.1:8000/index/
8、页面引入静态文件
1) 存储静态文件
· 在templates目录下创建 static 目录,放入需要的文件 如图片 img\xx.png
·需要修改djangoProject中的settings.py文件 <需要import os>
STATIC_URL = '/static/' # # 这里的static为"令牌",即如果想要访问静态文件,就必须以static开头 STATICFILES_DIRS = [ os.path.join(BASE_DIR, 'templates/static') # 这里的static存放静态文件的文件夹 ]
·html页面引入静态文件
<p href="https://cnblogs.com" target="_blank"> <img src="/static/img/cnblogs.png"> 博客园 </p>
执行结果
9、表单
-------------------------------------------------------------------------------------
如果万事开头难 那请结局一定圆满 @ Phoenixy
-------------------------------------------------------------------------------------