当前位置: 首页 > news >正文

Django(快速上手版)

Django 是一个全栈(Full-Stack)Python Web 开发框架,内置了数据库抽象层、ORM、用户认证、后台管理、模板引擎、URL 路由、表单处理等常用功能,开发者无需重复造轮子,只需专注业务逻辑。

1、创建django项目

安装django

pip install django

创建django项目

django-admin startproject mydjango

创建django的app

python manage.py startapp myapp

2、django项目目录

django的主目录

manage.py                 [项目的管理、启动项目、创建app、数据管理](不要动)
项目名称
    _init_.py
    settings.py              [项目配置]
    urls.py                  [URL和函数对应关系]
    asgi.py                  [接收网络请求](不要动)
    wsgi.py                  [接收网络请求](不要动)

django的app目录

app
    _init_.py
    admin.py                [固定,不用动] adjango默认提供了admin后台管理        
    apps.py                 [固定,不用动] app启动类
    migrations              [固定,不用动] 数据库变更记录
        _init_.py
    models.py               [重要] 对数据库操作
    tests.py                [固定,不用动] 单元测试
    views.py                [重要,函数]

注册app

在app/_init_.py中声明

在setting.py中添加如下

3、编写url与视图函数对应关系,urls.py

并在view.py中编写对应函数

4、启动django项目

pycharm启动

命令行启动

python manage.py runserver

5、web页面

1) 页面跳转,将页面放到app目录的templates目录下

def user_list(request):# 默认去app目录下的templates目录下找user.html,根据App的注册顺序逐一去templates目录下找return render(request, "user.html")

2)静态文件,放到app目录的static目录下

6、django模板语法的学习

1)参数传递

2)列表for循环展示

{% for n in n2 %}<span>{{ n }}</span>
{% endfor %}

3)map获取

<div>{% for k,v in n3.items %}<span>{{ k }} = {{ v }}</span><br>{% endfor %}
</div>
<hr>
<div>{% for k in n3.keys %}<span>{{ k }}</span><br>{% endfor %}
</div>
<hr>
<div>{% for v in n3.values %}<span>{{ v }}</span><br>{% endfor %}
</div>
<hr>
<div>{{ n3.name }}</div>

4)条件语句

{% if n3.name == "zhangsan" %}<span>zhangsan</span>
{% elif n3.name == "lisi" %}<span>lsi</span>
{% else %}<span>kkk</span>
{% endif %}

7、请求和响应

def index(request):#request是一个对象,封装了用户发送过来是所有请求相关数据#1、获取请求方式 GET/POSTprint(request.method)#2、在URL上传递值 /index/?n1=123&n2=999print(request.GET)#3.在请求体中提交数据print(request.POST)#4、将字符串内容返回给请求者# return HttpResponse("欢迎使用")#5、返回页面,读取HTML的内容 + 渲染(替换)->字符串,返回给用户浏览器# return render(request, "user.html", {"n3": map})#6、响应,让浏览器重定向到其它页面return redirect("https://www.baidu.com")

8、数据库操作

1)安装第三方模块

pip install mysqlclient

2) ORM

ORM帮助做两件事:

创建、修改、删除数据库中的表(不用写SQL)

操作数据表中的数据

3)连接数据库,在setting.py文件中

DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql','NAME': 'micro_analysis','USER': 'root','PASSWORD': 'Zjx123456#','HOST': '62.234.175.16','PORT': 3306}
}

4)django操作表

①创建表

在app目录下的models.py文件

执行命令:

注意:要在根目录下执行语句,同时app要注册

python manage.py makemigrations
python manage.py migrate

②增删改查

示例:增加记录
from myapp.models import User  # 创建一个新的User对象  
new_user = User(name='John Doe', email='johndoe@example.com', age=30)  # 将对象保存到数据库中  
new_user.save()
示例:查询记录
# 查询所有User对象  
all_users = User.objects.all()  # 查询名为'John Doe'的用户  
john_doe = User.objects.get(name='John Doe')  # 查询年龄大于25岁的用户  
users_over_25 = User.objects.filter(age__gt=25)
示例:更新记录
# 获取一个已存在的User对象  
existing_user = User.objects.get(name='John Doe')  # 修改该对象的字段  
existing_user.age = 31  # 保存修改到数据库中  
existing_user.save()
示例:删除记录
user_to_delete = User.objects.get(name='John Doe')  # 删除该对象  
user_to_delete.delete()
http://www.xdnf.cn/news/170551.html

相关文章:

  • IDEA中使用Git
  • 物联网相关
  • 【仿Mudou库one thread per loop式并发服务器实现】服务器边缘测试+性能测试
  • 强制缓存vs协商缓存
  • pycharm无法创建venv虚拟环境
  • Web安全:威胁解析与综合防护体系构建
  • 快速排序及其在Unity游戏开发中的应用
  • Node.js API 安全的主要策略:最佳实践
  • 面试记录1-春招补录0427
  • 【Hive入门】Hive基础操作与SQL语法:DML操作全面解析
  • FastAPI + Redis Pub/Sub + WebSocket 组合解决方案的详细介绍
  • Reverse-WP记录6
  • Taro on Harmony :助力业务高效开发纯血鸿蒙应用
  • 云计算市场的重新分类研究
  • 华为 MRAG:多模态检索增强生成技术论文阅读
  • 用Node.js施展文档比对魔法:轻松实现Word文档差异比较小工具,实现Word差异高亮标注(附完整实战代码)
  • 如何删除Google Chrome中的所有历史记录【一键清除】
  • 关于Android Studio的Gradle各项配置2
  • 神经网络(自己记录)
  • 《大型网站技术架构-核心原理与案例分析》笔记
  • 展销编辑器在未来的发展前景​
  • 硬盘损坏数据恢复后对python程序的影响
  • Ant(Ubuntu 18.04.6 LTS)安装笔记
  • 20250427在ubuntu16.04.7系统上编译NanoPi NEO开发板的FriendlyCore系统解决问题mkimage not found
  • django filter 日期大于当前日期的
  • 4月27号
  • 数据结构强化篇
  • 游戏引擎学习第247天:简化DEBUG_VALUE
  • 从零开始了解数据采集(二十一)——电子制造行业趋势分析案例
  • 第十一章-PHP表单传值