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

【玩转全栈】----Django基本配置和介绍

目录

Django基本介绍:

Django基本配置:

安装Django

创建项目

创建app

注册app

Django配置路由URL

Django创建视图

启动项目

Django基本介绍:

        Django是一个开源的、基于Python的高级Web框架,旨在以快速、简洁的方式构建高质量的Web应用程序。它由经验丰富的开发者设计,遵循“Don’t Repeat Yourself”(不要重复自己)和“Convention over Configuration”(约定优于配置)的原则,大大提高了开发效率和代码可维护性。Django内置了强大的功能,例如URL路由、ORM(对象关系映射)、模板引擎、表单处理和用户认证等,帮助开发者轻松实现从简单的网站到复杂的企业级应用。它还提供了一个直观的管理后台,让开发者可以快速管理数据模型和内容。此外,Django具有高度的安全性,内置防护如SQL注入、跨站脚本攻击(XSS)和跨站请求伪造(CSRF)。凭借其丰富的文档和强大的社区支持,Django成为开发者快速构建Web应用的首选框架之一,非常适合注重开发速度、代码质量和安全性的项目。

Django基本配置:

安装Django

Win+R打开控制台窗口

安装Django,输入:

pip install Django

成功安装后,可以检查是否安装成功,输入:

python -m django --version

若安装成功,会显示Django版本

创建项目

首先是在控制台进入存放Django文件的文件夹,放在自己好找的位置,一般就和之前的项目放在一起。

在控制台中基本文件命令如下:

#切换盘符
D:(C:)
#进入文件夹
cd 文件夹名称
#退到上一级文件夹
cd..
#清除控制台命令
cls

执行命令创建项目

打开django-admin工具,默认是在python\Script\django-admin.exe

在控制台输入:

"django-admin.exe位置" startproject 项目名称

可以参考我这个

如果你的django-admin.exe已经添加到环境变量了,直接输入:

django-admin startproject 项目名称

创建后,在pycharm中打开是这样的目录结果:

默认项目的文件介绍:

show
├── manage.py         【项目的管理,启动项目、创建app、数据管理】【不要动】【***常常用***】
└── show├── __init__.py├── settings.py    【项目配置】          【***常常修改***】├── urls.py        【URL和函数的对应关系】【***常常修改***】├── asgi.py        【接收网络请求】【不要动】└── wsgi.py        【接收网络请求】【不要动】

创建app

右键manage.py,在控制台打开

在控制台输入:

python manage.py startapp app01

app01是app名称,可以换成其他的,在正常的中大型项目开发中,会用到多app,就像下面这样:


    - app,用户管理【表结构、函数、HTML模板、CSS】
    - app,订单管理【表结构、函数、HTML模板、CSS】
    - app,后台管理【表结构、函数、HTML模板、CSS】
    - app,网站   【表结构、函数、HTML模板、CSS】
    - app,API    【表结构、函数、HTML模板、CSS】
    ..
    
但我们开发比较简洁,用不到多app,一般情况下,项目下创建1个app即可。

创建好app后项目结果是这样的:

文件介绍:

├── app01
│   ├── __init__.py
│   ├── admin.py         【固定,不用动】django默认提供了admin后台管理。
│   ├── apps.py          【固定,不用动】app启动类
│   ├── migrations       【固定,不用动】数据库变更记录
│   │   └── __init__.py
│   ├── models.py        【**重要**】,对数据库操作。
│   ├── tests.py         【固定,不用动】单元测试
│   └── views.py         【**重要**】,函数。
├── manage.py
└── show
    ├── __init__.py
    ├── asgi.py
    ├── settings.py
    ├── urls.py          【URL->函数】
    └── wsgi.py

注册app

在新建的django文件中找到settings设置配置文件,这个位置就是用来设置注册app的

将刚才创建的app注册,找到新建的app中的apps.py文件,name就是该app的名称,可以看见是在App01Config类中的。

将该app添加到设置中

Django配置路由URL

        Django中的URL路由通过urls.py文件管理,将客户端请求的URL路径映射到相应的视图函数或类。开发者使用pathre_path定义URL规则,其中支持静态路径和动态参数(如<int:id>)。此外,通过include()可以模块化管理各应用的URL配置,提升大型项目的结构清晰度。路由还支持命名模式,可通过反向解析生成URL,减少硬编码的风险。结合灵活的匹配规则与高可维护性,Django的URL路由是构建Web应用中连接前后端的重要核心。

配置path路径,在新建django文件中找到url.py文件

这里path中的第一个参数是路径,可以理解为页面url,第二个参数是进入前面路径后执行的函数,通常在视图函数中编写

下面进行一个基本的网页配置:

在url中配置路径,网页路径为hello/,设置跳转为视图文件中的hello函数,别忘了引入视图文件

别忘记引入view视图文件

Django创建视图

在视图文件中,定义视图函数hello:

def hello(request):return HttpResponse('Hello World!')

requests对象包含了客户端发送的所有信息,比如 HTTP 方法(GET、POST等)、URL参数、HTTP头部、Cookies等。

HttpResponse

  • 这是 Django 提供的一个类,用于构造 HTTP 响应对象。
  • 它表示服务器返回给客户端的内容。
  • 通过实例化 HttpResponse 类,我们可以创建并返回 HTML、文本或其他内容。

别忘记在视图文件中引入HttpResponse,用来返回文字

启动项目

用终端打开manage.py文件,输入django的项目启动命令:

python manage.py runserver

ctrl+鼠标左键单击本地服务器地址,打开页面

输入刚才定义的hello路由

显示了刚才返回的文字:

注意,要是之前运行了一个项目,后面再运行另一个的话,要关闭前面那个,因为端口被前一个占用了,后面那个项目就还是之前那个页面,关闭也很简单,把对应终端关掉就行。

感谢您的三连!!!

相关文章:

【玩转全栈】----Django基本配置和介绍

目录 Django基本介绍&#xff1a; Django基本配置&#xff1a; 安装Django 创建项目 创建app 注册app Django配置路由URL Django创建视图 启动项目 Django基本介绍&#xff1a; Django是一个开源的、基于Python的高级Web框架&#xff0c;旨在以快速、简洁的方式构建高质量的Web…...

mysql 学习6 DML语句,对数据库中的表进行 增 删 改 操作

添加数据 我们对 testdatabase 数据中 的 qqemp 这张表进行 增加数据&#xff0c;在这张表 下 打开 命令行 query console 在 软件中就是打开命令行的意思 可以先执行 desc qqemp; 查看一下当前表的结构。 插入一条数据 到qqemp 表&#xff0c;插入时要每个字段都有值 insert…...

自动化运维在云环境中的完整实践指南

随着云计算的普及,越来越多的企业将业务迁移到云上。云环境的高动态性和复杂性使得传统的手动运维方式难以应对,自动化运维成为提升效率、降低成本、保障系统稳定性的关键。本文将详细介绍如何在云环境中实施自动化运维,涵盖工具选择、实施步骤和最佳实践。 © ivwdcwso…...

一分钟搭建promehteus+grafana+alertmanager监控平台

为什么要自己搭建一个监控平台 平时进行后端开发&#xff0c;特别是微服务的后端可开发&#xff0c;一定少不了对接监控平台&#xff0c;但是平时进行一些小功能的测试又没有必要每次都手动安装那么多软件进行一个小功能的测试&#xff0c;这里我使用docker-compose搭建了一个…...

【10.2】队列-设计循环队列

一、题目 设计你的循环队列实现。 循环队列是一种线性数据结构&#xff0c;其操作表现基于 FIFO&#xff08;先进先出&#xff09;原则并且队尾被连接在队首之后以形成一个循环。它也被称为“环形缓冲器”。 循环队列的一个好处是我们可以利用这个队列之前用过的空间。在一个普…...

设置jmeter界面图标字体大小

设置jmeter界面图标字体大小 方法&#xff1a;点击“选项” -> 点击放大、缩小。&#xff08;可进行全局的菜单、左侧目录结构树、元件界面显示等字体图标的放大、缩小。&#xff09;...

Xposed-Hook

配置 Xposed 模块的 AndroidManifest.xml&#xff1a; <?xml version"1.0" encoding"utf-8"?> <manifest xmlns:android"http://schemas.android.com/apk/res/android"package"your.package.name"><applicationandr…...

设计模式Python版 原型模式

文章目录 前言一、原型模式二、原型模式示例三、原型管理器 前言 GOF设计模式分三大类&#xff1a; 创建型模式&#xff1a;关注对象的创建过程&#xff0c;包括单例模式、简单工厂模式、工厂方法模式、抽象工厂模式、原型模式和建造者模式。结构型模式&#xff1a;关注类和对…...

QT:图像上绘制图形

需求描述 1、展示一张图像 2、在图像上可以使用数据绘制图像&#xff1a;矩形、不规则图形、线条 3、有按键可以选择 概要设计 规划布局如下 1、左边是Qlabel 用于展示图片 2、右边是三个按钮 具体实现 1、 首先设计 UI 界面&#xff0c;对控件进行布局 在 mainwindow.u…...

GPU上没程序在跑但是显存被占用

原因&#xff1a;存在僵尸线程&#xff0c;运行完但是没有释放内存 查看僵尸线程 fuser -v /dev/nvidia*关闭僵尸线程 pkill -9 -u 用户名 程序名 举例&#xff1a;pkill -9 -u grs python参考&#xff1a;https://blog.csdn.net/qq_40206371/article/details/143798866...

wordpress代码结构解析

WordPress 是一个基于 PHP 和 MySQL 的开源内容管理系统&#xff08;CMS&#xff09;&#xff0c;广泛用于构建网站和博客。要解析 WordPress 代码&#xff0c;首先需要了解其核心结构、主要文件和常用的函数。以下是 WordPress 代码解析的基本指南&#xff1a; --- ### 1. *…...

【Unity3D】实现2D小地图效果

目录 一、玩家脚本Player 二、Canvas组件设置 三、小地图相关 四、GameLogicMap脚本修改 基于&#xff1a;【Unity3D】Tilemap俯视角像素游戏案例-CSDN博客 2D玩家添加Dotween移动DOPath效果&#xff0c;移动完成后进行刷新小地图&#xff08;小地图会顺便刷新大地图&…...

关联传播和 Python 和 Scikit-learn 实现

文章目录 一、说明二、什么是 Affinity Propagation。2.1 先说Affinity 传播的工作原理2.2 更多细节2.3 传播两种类型的消息2.4 计算责任和可用性的分数2.4.1 责任2.4.2 可用性分解2.4.3 更新分数&#xff1a;集群是如何形成的2.4.4 估计集群本身的数量。 三、亲和力传播的一些…...

https数字签名手动验签

以bing.com 为例 1. CA 层级的基本概念 CA 层级是一种树状结构&#xff0c;由多个层级的 CA 组成。每个 CA 负责为其下一层级的实体&#xff08;如子 CA 或终端实体&#xff09;颁发证书。层级结构的顶端是 根 CA&#xff08;Root CA&#xff09;&#xff0c;它是整个 PKI 体…...

LeetCode:62.不同路径

跟着carl学算法&#xff0c;本系列博客仅做个人记录&#xff0c;建议大家都去看carl本人的博客&#xff0c;写的真的很好的&#xff01; 代码随想录 LeetCode&#xff1a;62.不同路径 一个机器人位于一个 m x n 网格的左上角 &#xff08;起始点在下图中标记为 “Start” &…...

如果我想设计一款复古风格的壁纸,应该选什么颜色?

设计复古风格的壁纸时&#xff0c;选择合适的颜色是营造怀旧和经典氛围的关键。复古风格通常使用一些温暖、柔和且带有岁月痕迹的色调。以下是一些适合复古风格壁纸的颜色选择和搭配建议&#xff1a; 一、复古风格的主色调 棕色系&#xff1a; 特点&#xff1a;棕色是复古风格的…...

【数据结构】树的基本:结点、度、高度与计算

树是数据结构中一种重要的非线性结构&#xff0c;广泛应用于计算机科学的各个领域&#xff0c;例如文件系统、数据库索引、编译器等。理解树的各种性质&#xff0c;如结点数、度、高度等&#xff0c;对于解决实际问题至关重要。 本文将会探讨树的基本概念&#xff0c;以及给出几…...

【Pytest】生成html报告中,中文乱码问题解决方案

链接上一篇文章:https://blog.csdn.net/u013080870/article/details/145369926?spm1001.2014.3001.5502 中文乱码问题&#xff0c;python3&#xff0c;Python3.7后&#xff0c;还一个文件就是result.py 因为中文可以在内容中&#xff0c;也可能在文件名&#xff0c;类名&…...

week08_文本匹配任务

1、文本匹配任务概述 狭义&#xff1a; 给定一组文本&#xff0c;判断其是否语义相似 今天天气不错 match 今儿个天不错呀 √ 今天天气不错 match 你的代码有bug 以分值形式给出相似度 今天天气不错 match 今儿个天不错呀 0.9 今天天气不错 match…...

JUC--ConcurrentHashMap底层原理

ConcurrentHashMap底层原理 ConcurrentHashMapJDK1.7底层结构线程安全底层具体实现 JDK1.8底层结构线程安全底层具体实现 总结JDK 1.7 和 JDK 1.8实现有什么不同&#xff1f;ConcurrentHashMap 中的 CAS 应用 ConcurrentHashMap ConcurrentHashMap 是一种线程安全的高效Map集合…...

为什么Delorean是Python时间处理的最佳选择?

为什么Delorean是Python时间处理的最佳选择&#xff1f; 【免费下载链接】delorean Delorean: Time Travel Made Easy 项目地址: https://gitcode.com/gh_mirrors/de/delorean 在Python开发中&#xff0c;时间处理常常是一个令人头疼的问题&#xff0c;尤其是涉及到时区…...

初创公司如何用Taotoken统一管理多个AI应用接口

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 初创公司如何用Taotoken统一管理多个AI应用接口 对于资源有限的初创团队而言&#xff0c;快速、低成本地集成人工智能能力是提升产…...

接口响应慢排查指南:从分层框架到实战优化

1. 问题定位&#xff1a;从现象到根源的排查框架接口响应慢&#xff0c;这几乎是每个后端开发者、运维工程师乃至测试同学都会遇到的“经典”问题。它不像一个明确的错误&#xff0c;会直接抛出异常或返回错误码&#xff0c;而是像一个隐形的性能瓶颈&#xff0c;悄无声息地拖慢…...

3步解锁Cursor Pro永久免费使用:告别试用限制的终极指南

3步解锁Cursor Pro永久免费使用&#xff1a;告别试用限制的终极指南 【免费下载链接】cursor-free-vip [Support 0.45]&#xff08;Multi Language 多语言&#xff09;自动注册 Cursor Ai &#xff0c;自动重置机器ID &#xff0c; 免费升级使用Pro 功能: Youve reached your t…...

包管理器全指南:从系统到语言的依赖管理与最佳实践

1. 项目概述&#xff1a;一个为开发者量身定制的包管理器指南如果你是一名开发者&#xff0c;尤其是经常在Linux或macOS环境下工作的开发者&#xff0c;那么“包管理器”这个词对你来说一定不陌生。无论是安装一个开发工具链&#xff0c;还是部署一个运行时环境&#xff0c;包管…...

边缘UPF解决方案,构筑5G轻量化边缘算力底座

随着 5G 行业应用持续深化&#xff0c;工业生产、智慧交通、园区专网、沉浸式视听等场景&#xff0c;对网络时延、数据安全与传输效率提出了更高要求。传统集中式 UPF 统一回传的组网模式&#xff0c;容易造成骨干网负荷过高、数据传输时延增加&#xff0c;同时行业内部私密数据…...

2026 免费GEO监测:AI搜索优化实用工具推荐

2026年AI搜索优化&#xff08;GEO&#xff09;已经成为企业数字营销的核心环节。当前GEO工具市场呈现明显的国内外分化格局&#xff0c;国内工具和海外工具在功能支持、适用场景上存在巨大差异。本文选取目前市场上主流的5款GEO工具&#xff0c;从功能完整性、AI模型支持、易用…...

ThinkPad T480黑苹果终极方案:从硬件兼容到系统优化的完全手册

ThinkPad T480黑苹果终极方案&#xff1a;从硬件兼容到系统优化的完全手册 【免费下载链接】t480-oc &#x1f4bb; Lenovo ThinkPad T480 / T580 / X280 Hackintosh (macOS Monterey 12.x - Sequoia 15.x) - OpenCore 项目地址: https://gitcode.com/gh_mirrors/t4/t480-oc …...

开源机器人夹爪任务控制台:架构设计与工程实践全解析

1. 项目概述&#xff1a;从“OpenClaw 任务控制”看开源机器人控制台的演进最近在机器人开发社区里&#xff0c;一个名为abhi1693/openclaw-mission-control的项目引起了我的注意。乍一看这个标题&#xff0c;你可能会联想到科幻电影里那些布满屏幕、控制着庞大机械臂的指挥中心…...

KV缓存优化与RAG系统性能提升实践

1. KV缓存技术原理与RAG系统挑战 在大型语言模型(LLM)推理过程中&#xff0c;KV&#xff08;Key-Value&#xff09;缓存技术通过存储注意力机制计算产生的中间状态来避免重复计算。具体来说&#xff0c;Transformer架构中的每个解码器层都会为输入序列生成键(Key)和值(Value)矩…...