初识Django
web应用概念
http的默认端口号:80
https的默认端口号:443
1. web应用是什么?
通过浏览器访问的应用都是
2. 软件开发模式:
服务端需要具备的特征:24小时对外提供服务
C/S:client: 客户端, server: 服务端
B/S:browser: 浏览器,server:服务端
# 本质上B/S架构也是C/S架构
3. Web应用程序的优点
1. 只需要一个浏览器
2. 节省资源
3. 客户端不需要主动更新,服务端更新即可
4. Web应用程序的缺点
1. 一旦服务端出现问题,客户端立马受影响
2. 兼容性问题
'''
web框架:就是在固定的位置书写固定的代码
'''
python中的三大主流框架:
1. Django框架:
大而全,类似于航空母舰
2. flask框架:
小而精,依赖于第三方模块
3. tornado框架:
异步高性能框架
MVC和MTV模式
1. MVC:
M: model(跟数据打交道的)
V: View(视图, 页面)
C: controller(控制器,主要写逻辑的)
S:service (服务层)
2. MTV:
M: model(模型层:跟数据相关的)
T:template(模板:html页面)
V:view(主要写逻辑的)
django下载与安装
1. django的版本问题:
django1.x: 老项目再用
django2.x:新项目再用
django3.x:刚出来的
# 我们学习使用django1.x
# 安装django
pip3 install django (最新版本)
pip3 install django==1.1.29
如何验证django是否安装成功?
# 在cmd中, 输入django-admin,如果有输出信息,就代表安装成功
创建Django项目
'''你可以提前切换到项目要保存的位置'''
1. 命令行创建
django-admin startproject 项目名
2. pycharm创建
file>newproject>Django
3. 命令行创建和pycharm创建的区别:
1. pycharm创建:
自动生成templates文件夹
settings.py文件:
'''
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')]
}]
'''
2. 命令行创建:
没有templates文件夹
settings.py文件:
'''
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
}
]
'''
启动django项目
'''前提:先切换到manage.py所在的文件夹下面'''
1. 命令行启动
python3 manage.py runserver
python3 manage.py runserver 127.0.0.1:8080
python3 manage.py runserver 8080
'''django的默认端口号:8000'''
2. pycharm启动
点击pycharm绿色按钮
创建应用
# 应用:application app
我们刚刚创建的项目就类似于是一所大学,而创建的应用就类似于大学里面的二级学院
eg:
用户模块 user
订单模块 order
收货地址管理 :address
...
如何创建应用?
1. 命令行创建
# python manage.py startapp 应用名
'''
应用名:最好见名知意,我们学习使用,就命名为:app01, app02...
'''
# 一个django项目至少要有一个应用
2. pycharm创建
Tools => run manage.py task
3. 应用创建完成之后,第一件事去配置文件中注册应用
###################################################
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'app01',
'app02'
]
###################################################
主要文件介绍
mysite1 # 项目名
app01 # 应用名
migrations # 迁移数据库的时候,会把迁移记录保存到这里来
__init__.py
admin.py # django自带的后台管理系统
apps.py # 忽略
models.py # 模型层,以后跟数据库相关的都在这个里面
tests.py # 测试脚本
views.py # view层,主要用来写逻辑的
mysite1
__init__.py
settings.py # 整个django项目的全局配置文件
urls.py # 路由层,写的是路径与函数的对应关系
wsgi.py # wsgiref服务器, WSGI协议,uwsgi服务器
templates # 写html页面的地方
db.sqlite3 # django自带的小型数据库, mysql,oracle
manage.py # 启动文件,入口文件
__EOF__

本文作者:祈安
本文链接:https://www.cnblogs.com/jyc666/p/15929251.html
关于博主:没有收拾残局的能力,就别放纵善变的情绪
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/jyc666/p/15929251.html
关于博主:没有收拾残局的能力,就别放纵善变的情绪
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)