【python】Django——django简介、django安装、创建项目、快速上手

笔记为自我总结整理的学习笔记,若有错误欢迎指出哟~

【Django专栏】
Django——django简介、django安装、创建项目、快速上手
Django——templates模板、静态文件、django模板语法、请求和响应
Django——连接mysql数据库

Django——django安装、创建django项目、django快速上手

  • django简介
  • django安装
    • 1. conda创建环境pydjango
    • 2. pip安装django
    • 3. django目录
  • 创建项目
    • 1. 打开终端(cmd)
    • 2. 进入某个目录
    • 3.创建项目命令
    • 4.django项目目录
    • 5.在pycharm中打开项目
    • 5.创建app——application01
  • 快速上手
    • 1.注册应用程序app——application01
    • 2.编写url和视图函数的对应关系【urls.py】
    • 3.编写视图函数【views.py】
    • 4.启动django项目
    • 5.打开django项目
    • 6.退出django项目

django简介

Django 是一个高效、功能强大的 Web 应用程序框架,采用 Python 编写而成。它遵循了 MTV(模型-模板-视图)的软件设计模式,旨在帮助开发者快速构建可维护的 Web 应用程序。

下面是 Django 框架的一些详细介绍:

  1. 模型(Model): Django 的模型层提供了对数据库的抽象和管理。通过定义模型类,开发者可以使用简单的 Python 代码来描述数据结构和关系,并自动映射到底层数据库。这样,开发者可以通过操作模型对象来进行数据库操作,而无需直接编写 SQL 语句。

  2. 视图(View): Django 的视图层负责处理用户请求和生成响应。视图函数或类接收来自用户的请求,并根据业务逻辑进行相应的处理,然后生成并返回响应内容。视图层也负责与模型层和模板层进行交互,以获取和处理数据。

  3. 模板(Template): Django 的模板层负责生成最终的 HTML 响应内容。模板引擎提供了一种简洁而强大的方式来将动态数据插入到静态 HTML 模板中。开发者可以在模板中使用变量、控制结构和过滤器等功能,实现动态生成页面内容的需求。

  4. 表单处理: Django 提供了强大的表单处理功能,开发者可以轻松地创建表单并进行数据验证。框架处理表单的数据验证、错误处理和呈现,大大简化了开发过程。

  5. 认证和授权: Django 提供了内置的用户认证和授权系统,开发者可以轻松地集成用户注册、登录和权限管理等功能。这些功能包括用户身份验证、密码重置、用户组和权限管理等。

  6. 管理界面: Django 自带了一个功能强大且易于使用的管理界面,可以自动生成 CRUD(增删改查)操作的界面。开发者可以通过简单的配置,让管理员轻松管理网站的内容和数据。

  7. 安全性: Django 注重安全性,并提供了许多内置的安全特性来保护应用程序免受常见的 Web 攻击,如跨站脚本攻击(XSS)、跨站请求伪造(CSRF)等。

Django 是一个成熟、全面且易用的 Web 应用程序框架,适用于各种规模的项目。它的设计理念是简洁、高效和可维护性,使开发者能够专注于业务逻辑而无需过多关注底层技术细节。

django安装

1. conda创建环境pydjango

conda create -n pydjango python=3.9

2. pip安装django

pip install django -i https://pypi.tuna.tsinghua.edu.cn/simple

3. django目录

D:\anaconda3\envs\pydjango- python.exe- Scripts- pip.exe- django-admin.exe		#工具,创建django项目- lib- 内置模块- site-packages		#第三方模块- django		#框架源码- 其他模块

创建项目

1. 打开终端(cmd)

2. 进入某个目录

cd F:\PycharmProjects

PycharmProjects为项目所在目录
在这里插入图片描述

3.创建项目命令

django-admin startproject myproject

可能出现报错:
Fatal error in launcher: Unable to create process using ‘“D:\anaconda3\envs\pydjiango\python.exe” “D:\anaconda3\envs\pydjango\Scripts\django-admin.exe” startproject myproject’: ???

解决方法:

python D:\anaconda3\envs\pydjango\Scripts\django-admin.exe startproject DjangoProject

D:\anaconda3\envs\pydjango\Scripts\django-admin.exe为django-admin.exe的路径(根据自己目录更改)

在这里插入图片描述

4.django项目目录

F:\PycharmProjects\DjangoProject(自己创建的django项目路径)
- DjangoProject- __init__.py		- asgi.py		【异步接受网络请求】【不要改】- wsgi.py		【同步接受网络请求】【不要改】- urls.py		【url和python函数的对应关系都在这里,操作基本都在这里】【常修改】- settings.py	【项目的配置文件】【常修改】
- manage.py			【项目管理:启动项目、创建app、数据管理】【不要改】【常用】

5.在pycharm中打开项目

修改python解释器为conda创建的pydjango
在这里插入图片描述

5.创建app——application01

app不是应用,是功能的划分。简单开发一般用不到多app,项目下创建一个app即可

创建是靠manage.py创建的,终端输入

python manage.py startapp application01

在这里插入图片描述
在这里插入图片描述

F:\PycharmProjects\DjangoProject\application01
- migrations		【固定,不要动】【数据库变更记录】
- admin.py			【固定,不要动】【默认提供admin后台管理】
- apps.py			【固定,不要动】【app启动类】
- models.py			【**重要**】【对数据库操作】
- tests.py			【单元测试】
- views.py			【**重要**】【函数】

快速上手

1.注册应用程序app——application01

在这里插入图片描述
DjangoProject——>settings.py——>INSTALLED_APPS中添加"application01.apps.Application01Config",
在这里插入图片描述

2.编写url和视图函数的对应关系【urls.py】

# application01为应用程序名
from application01 import views	urlpatterns = [# www.xxx.com/index/ ——> 函数path("index/", views.index),
]

在这里插入图片描述

3.编写视图函数【views.py】

在视图函数中,request 参数代表用户发送的请求。通过访问 request 对象的属性和方法,你可以获取用户的请求信息,如请求方法、URL、GET 或 POST 参数等。

# application01 ——> views.py
from django.http import HttpResponsedef index(request):		#request为用户发送的请求return HttpResponse("欢迎使用!")

在这里插入图片描述

4.启动django项目

  • 命令行启动(必须在pydjango环境)

activate pydjango
python manage.py runserver

在这里插入图片描述

5.打开django项目

在这里插入图片描述
http://127.0.0.1:8000/index/
在这里插入图片描述

6.退出django项目

CTRL-BREAK,没有BREAK键,则使用CTRL-C退出

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/193509.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

提高生存能力的7个关键技巧!

作为一款备受热议和玩家喜爱的多人在线射击游戏,《绝地求生》中生存能力的提高是取得胜利的关键。在这篇实用干货分享中,我们将详细说明7个关键技巧,帮助你在游戏中提高生存能力,获得更多胜利。 1.选择降落点:选择适合…

Typora使用教程

文章目录 markdown的使用说明一、标题 这是一级标题这是二级标题二、段落1、换行2、分割线 三、文字显示1、字体2、上下标 四、列表1、无序列表2、有序列表3、任务列表 五、区块显示六、代码显示1、行内代码2、代码块 七、链接八、脚注九、图片插入十、表格十一、流程图1、横向…

excel怎么能保证粘贴公式的时候不自增

例如在C4单元格中输入了公式: 现在如果把C4拷贝到C5,D3会自增长为D4: 现在如果想拷贝的时候不自增长,可以先把光标放到C4单元格,然后按F4键,加上了$符号,锁定了: 现在再拷贝&a…

kubernetes资源管理

资源管理 资源管理介绍 在kubernetes中,所有的内容都抽象为资源,用户需要通过操作资源来管理kubernetes。 kubernetes的本质上就是一个集群系统,用户可以在集群中部署各种服务,所谓的部署服务,其实就是在kubernetes集…

人均年薪70万!华为项目经理具备了哪些能力

大家好,我是老原。 最近在逛脉脉的时候,看到了一位华为项目经理晒出的月收入:5W,这还是不包含每年分红奖励前的到手薪资。 按他现在的19级别,再加上分红奖励,年薪至少在70W,留言区羡慕声一片。…

Since Maven 3.8.1 http repositories are blocked

原因 高版本的maven不支持http的存储库。 解决方案 其实方法有好几种,比如降级maven版本至3.6.3(之前一直用的都是这个版本),我选择了一种比较快(但不一定安全)的方式,因为3.6.3版本被我卸载了,这里直接修改idea的setting配置&…

【数据处理】Python:实现求条件分布函数 | 求平均值方差和协方差 | 求函数函数期望值的函数 | 概率论

猛戳订阅! 👉 《一起玩蛇》🐍 💭 写在前面:本章我们将通过 Python 手动实现条件分布函数的计算,实现求平均值,方差和协方差函数,实现求函数期望值的函数。部署的测试代码放到文后了&…

DNS正向解析和主从复制

目录 概念 DNS解析 例:www.baidu.com. 解析过程 DNS查询方式 DNS的查询过程 DNS软件bind 正向解析(根据域名查找ip地址) 1.先安装bind软件 2.打开网卡配置文件 将DNS1改为自己本机 (更改完配置重启服务) 3.打…

最长上升子序列模型 笔记

首先附上模板&#xff1a; #include<bits/stdc.h> #define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0); #define endl \nusing namespace std;typedef pair<int, int> PII; typedef long long ll;const int N 100010;int n; int a[N], q[N];int main()…

MySQL库的操作『增删改查 ‖ 编码问题 ‖ 备份与恢复』

✨个人主页&#xff1a; 北 海 &#x1f389;所属专栏&#xff1a; MySQL 学习 &#x1f383;操作环境&#xff1a; CentOS 7.6 阿里云远程服务器 &#x1f381;软件版本&#xff1a; MySQL 5.7.44 文章目录 1.创建数据库2.数据库中的编码问题2.1.字符集与校验集2.3.支持的字符…

DNS域名解析服务

1.概述 1.1.产生原因 IP 地址:是互联网上计算机唯一的逻辑地址&#xff0c;通过IP 地址实现不同计算机之间的相互通信&#xff0c;每台联网计算机都需要通过I 地址来互相联系和分别&#xff0c;但由于P 地址是由一串容易混淆的数字串构成&#xff0c;人们很难记忆所有计算机的…

python 实验7

姓名&#xff1a;轨迹 学号&#xff1a;6666 专业年级&#xff1a;2021级软件工程 班级&#xff1a; 66 实验的准备阶段 (指导教师填写) 课程名称 Python开发与应用 实验名称 文件异常应用 实验目的 &#xff08;1&#xff09;掌握基本文件读写的方式&#xff1b; …

【仿真动画】ABB IRB 8700 机器人搬运(ruckig在线轨迹生成)动画欣赏

场景 动画 一、IRB 8700简介 二、动画脚本重点分析 2.1 sim.moveToPose 通过在两个 poses 之间执行插值&#xff0c;使用 Ruckig 在线轨迹生成器生成对象运动数据。该函数可以通过处理 4 个运动变量&#xff08;x、y、z 和两个姿势之间的角度&#xff09;或单个运动变量&#…

linux 网络 cat /proc/net/dev 查看测试网络丢包情况

可以通过 cat /proc/net/dev 查看测试网络丢包情况&#xff0c;drop关键字&#xff0c;查看所有网卡的丢包情况 还可以看其他数据&#xff0c; /proc/net/下面有如下文件

计算机毕业设计选题推荐-体育赛事微信小程序/安卓APP-项目实战

✨作者主页&#xff1a;IT毕设梦工厂✨ 个人简介&#xff1a;曾从事计算机专业培训教学&#xff0c;擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Py…

Linux C 进程间通信

进程间通信 概述进程间通信方式管道概述管道函数无名管道 pipe有名管道 makefifo删除有名管道 rmove 有名管道实现 双人无序聊天 例子 信号信号概述信号处理过程信号函数传送信号给指定的进程 kill注册信号 signal查询或设置信号处理方式 sigaction设置信号传送闹钟 alarm 有名…

web缓存-----squid代理服务

squid相关知识 1 squid的概念 Squid服务器缓存频繁要求网页、媒体文件和其它加速回答时间并减少带宽堵塞的内容。 Squid代理服务器&#xff08;Squid proxy server&#xff09;一般和原始文件一起安装在单独服务器而不是网络服务器上。Squid通过追踪网络中的对象运用起作用。…

【C语言 | 指针】指针和数关系——剪不断,理还乱

&#x1f601;博客主页&#x1f601;&#xff1a;&#x1f680;https://blog.csdn.net/wkd_007&#x1f680; &#x1f911;博客内容&#x1f911;&#xff1a;&#x1f36d;嵌入式开发、Linux、C语言、C、数据结构、音视频&#x1f36d; &#x1f923;本文内容&#x1f923;&a…

算法学习打卡day45|动态规划:股票问题总结

Leetcode股票问题总结篇 动态规划的股票问题一共六道题&#xff0c;买卖股票最佳时机和买卖股票手续费都是一个类型的问题&#xff0c;维护好买入和卖出两个状态即可&#xff0c;方法一摸一样。而冷冻期也差不多就是状态多了点&#xff0c;买入、保持卖出、当日卖出、以及冷冻期…

Android10 手势导航

种类 Android10 默认的系统导航有三种&#xff1a; 1.两个按钮的 2.三个按钮的 3.手势 它们分别对应三个包名 frameworks/base/packages/overlays/NavigationBarMode2ButtonOverlay frameworks/base/packages/overlays/NavigationBarMode3ButtonOverlay frameworks/base/packa…