Django学习记录-1

Django学习记录-1

虽然网上教程都很多,但是感觉自己记录一下才属于自己,之后想找也方面一点,文采不佳看的不爽可绕道。

参考贴

从零开始的Django框架入门到实战教程(内含实战实例) - 01 创建项目与app、加入静态文件、模板语法介绍(学习笔记)
Django加载静态文件失败,已解决

安装Django

我使用的是miniconda创建一个环境后,在环境下安装的django

bash 复制代码
conda create -n django
conda activate django
pip install django
...

可能有些不正确,上次装的时候没记录,以后再有要装的时候如果出问题了再改吧

创建项目Project

bash 复制代码
cd {希望创建项目的目录}
django-admin.exe startproject projName # 因为是在Windows上写的,所以有exe

初始项目内容

参考参考贴

bash 复制代码
projName 
	manage.py		// 好东西,项目管理、启动、创建app、数据管理都在这里,不要动它
    projName 
    	__init__.py
        settings.py	// 项目的配置文件,很多操作也在这里(链接数据库)
        urls.py		// url和python函数的对应关系都在这里,操作基本都在这里
        asgi.py		// 异步接受网络请求的
        wsgi.py		// 同步接受网络请求的

创建功能APP

生成APP目录

bash 复制代码
cd projName
python manage.py startapp appName
bash 复制代码
app1
	__init__.py
	admin.py			// django默认的自带后台管理
	apps.py				// app启动类
	migrations			// 数据库变更记录
		__init__.py
	models.py			// 数据库的操作在这里
	test.py				// 单元测试
	views.py			// first_try里面的url里的函数一般都要在这里找(常用)

添加app到项目设置中

在项目主文件下找到settings.py,在其中INSTALLED_APPS的列表中添加新的app的config,

添加一个页面给这个app

在app下的views.py也就是所谓视图文件,添加想添加的内容,这边参考参考贴:

给这个页面指定对应的网址

在项目文件urls.py中添加如下:

测试一下

打开服务:

bash 复制代码
python manage.py runserver {port(可选,默认8000)}

访问:http://127.0.0.1:8000/index/

自制一个html页面

让llm随便写一个简单的html文件,放在app1/templates/中,或者参考参考贴中的做法也可以

在app的视图文件中通过render获取html

插入图片或其他静态文件

这个有点玄乎,我按照教程敲的就是不行,但是我捣鼓了一阵之后再恢复原状,就好了:(

在html文件头部引入{% load static %}

在app路径下创建静态目录,第一层必须要叫static

然后在需要插入图片的地方按下方插入即可

也可以直接使用:

缓存禁用

由于现在浏览器为了加速网页速度,对相同的静态文件会进行缓存,所以开发过程中如果静态文件发生了改变并不会及时在浏览器中反馈。可以打开浏览器开发者模式,打开禁用缓存

高级语句

照抄参考贴

主要用到的知识点有:

render第三个参数的使用

列表的使用

字典的使用

循环

相关推荐
2501_9142459314 分钟前
CSS如何处理CSS变量作用域冲突_利用特定类名重写变量值
jvm·数据库·python
菜鸟学Python15 分钟前
Python生态在悄悄改变:FastAPI全面反超,Django和Flask还行吗?
开发语言·python·django·flask·fastapi
<-->20 分钟前
Megatron(全称 Megatron-LM,由 NVIDIA 开发)和 DeepSpeed(由 Microsoft 开发)
人工智能·pytorch·python·深度学习·transformer
测试19981 小时前
2026最新软件测试面试八股文【附文档】
自动化测试·软件测试·python·测试工具·面试·职场和发展·测试用例
handler011 小时前
Linux: 基本指令知识点(2)
linux·服务器·c语言·c++·笔记·学习
maqr_1102 小时前
MySQL数据库迁移到云端如何保障安全_数据加密与SSL连接配置
jvm·数据库·python
u0109147602 小时前
MySQL如何限制触发器递归调用的深度_防止触发器死循环方法
jvm·数据库·python
weixin_381288182 小时前
MySQL中如何使用HEX函数转换十六进制_MySQL进制转换函数
jvm·数据库·python
炽烈小老头2 小时前
【每天学习一点算法 2026/04/20】除自身以外数组的乘积
学习·算法
maqr_1102 小时前
HTML怎么生成订单预览_HTML只读订单信息结构【操作】
jvm·数据库·python