自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(63)
  • 收藏
  • 关注

原创 Django的‘通用视图TemplateView’

其中base.html文件同样位于项目templates目录下。book.jpg文件位于项目的static\images目录下。使用通用视图的好处是:如果有一个html需要展示,不需要写view视图函数,直接写好url即可。3、打开网页http://localhost:8000/home/,即可查看。2、在项目templates目录下,新建home.html文件。1、编辑项目urls.py文件。

2024-06-13 11:44:13 345

原创 Django分页

3、向项目的根templates中添加paginator.html模板,用于在需要分页的地方include。2、给原来的罗列信息函数,添加分页功能,即按照页码,只返回部分信息。注意在写href时,问号和page之间没有空格。4、在原来的罗列信息页面中,引入分页模板。1、在视图函数文件中引入‘分页器’

2024-06-06 14:16:14 394

原创 Django按照文章ID更新文章

在提交时,JavaScript函数中,使用var id = {{ article_id }}语句得到文章ID。2、article_list.html文件中遍历articles,获得某个article的ID,并使用以下语句为‘编辑图标’设置超链接。3、包含参数的url的写法如下。注意这里的article_id必须就是视图函数redit_article中使用的形参,如果不一致,会报错。如果是Get请求,就使用获得的ID得到article的信息,传递到redit_article.html页面中,渲染该页面。

2024-06-06 11:12:20 497

原创 Django按照文章ID删除文章

2、在html部分,代表删除的图标,被点击时,调用javascript中的del_article函数,这个函数包含参数article.id。view函数渲染这个html文件时,传递了articles变量,article是遍历articles后获得的,要获得article的各个属性,使用‘.’方法。3、在javascript部分,articleId获得article.id的值,并将其提交给服务器。4、在视图部分,使用字典的键article_id,获得传递的‘文章ID’,并执行删除操作。

2024-06-06 10:58:44 253

原创 Django中支持‘中文’的slug

1、进入虚拟环境,安装slug。2、进入控制台,测试。

2024-05-23 12:02:53 130

原创 Django数据库查询操作

对于查询返回的QuerySet结果,默认是按照数据模型类中定义的字段排序的,如果要重新排序,可以使用order_by()方法。order_by()的参数中可以写多个字段名称,即按照字段前后顺序分别作为排序的“主关键词”和“次关键词”。括号里面的是查询条件,可以设置一个以上的查询条件,中间用‘,’分开。这里查询出username中以“laoshi”这个字符串结尾的对象。除filter()能够实现根据条件查询外,还有exclude()过滤不到结果时:返回空。查询不到结果时:报错。

2024-05-23 11:53:14 317

原创 Django使用AJAX向服务器发起请求

AJAX(Asynchronous JavaScript and XML)是一种用于创建交互式网页应用程序的技术,它允许在不重新加载整个页面的情况下向服务器发送和接收数据。通过 AJAX,网页可以异步地向服务器发起请求并在后台进行处理,然后在不刷新页面的情况下更新页面的部分内容。:AJAX 的核心是 JavaScript,它负责在客户端(浏览器)发起请求、处理响应,并更新页面的内容。:XHR 是在 JavaScript 中用于向服务器发起 HTTP 请求和接收响应的对象。

2024-05-20 20:21:09 457

原创 PyCharm设置——用于调试虚拟环境中的django程序

使用Pycharm新建了一个项目。项目目录:C:\Users\grace\PycharmProjects\learning_log在该路径下安装虚拟环境ll_env,并在虚拟环境下安装Django。为了调试该Django需要对PyCharm进行设置。

2024-05-20 19:19:52 1129

原创 Django提交表单出错&提示错误

使用ArticleColumnForm表单,向数据库提交内容,内容包括column。如果同一用户提交的column重复,则提示表单出错,表单提交失败后,重新渲染表单提交html页面,其中提示错误信息。只有在form的valid检查通过后,才进行页面的重定向,否则重新渲染add_column.html页面。渲染是使用的form不是空表,而是刚才提交的,包含错误信息的form。添加__init__方法,初始化表单时,包含提交表单的用户信息。添加clean_column方法,检查column是否重复。

2024-05-17 20:22:36 223

原创 Django用户信息中的:选择、上传、显示图片

点击choose file按钮,弹出文件选择对话框,选择图片cat.jpg后,该图片显示在图片显示区,点击upload file按钮,该图片url保存到数据库userinfo的photo字段,内容是photos/cat.jpg。.imageBox确定文件显示区的大小,.imageBox img确定当要显示的图片与图片显示区大小不同时,以何种方式填充图片显示区,这里采用的是不改变宽高比,适应图片显示区。3、修改用户信息编辑页面的html文件,添加图片显示区和两个按钮,分别执行图片选择、图片上传功能。

2024-05-16 15:42:46 421

原创 Django用户登录后的‘重定向’

注意,此时页面虽然跳转到了登录url,但是其中附加了一个next变量。该变量后面的内容表明在登录完成后希望能够自动跳转的位置。在urls.py文件中定义,处理该url的view函数为views.py文件中的myself。这段代码是 Django 模板语言的代码,用于在模板中根据条件渲染不同的 HTML 表单。表明,只有在用户登录的情况下才能执行。为了实现自动跳转,需要修改登录页面的html文件,内容如下。参数的登录表单,用于在登录后重定向到指定的地址;不存在或为空,则生成一个普通的登录表单。

2024-05-09 11:03:36 368

原创 Django数据模型类(Model)字段属性类型

DateField、DateTimeField:用于保存时间,有一个常用参数auto_now_add,如果auto_now_add=True,那么当数据模型实例被保存时,当前时间将自动被存储,而不需要为该字段进行赋值。· TextField:与CharField一样,区别在于保存的字符串长度是无限的(严格说应该受制于数据库程序和硬件系统),通常用于保存较大文本。类django.db.models中的每个属性,对应数据库中的一个字段,所以属性类型就是数据库的字段类型。

2024-05-04 13:01:12 291

原创 Django响应‘表单请求’过程

(1)用户通过自己的浏览器(客户端)第一次向服务器发出含有表单页面的请求,Django会创建一个未绑定数据的表单实例(例如form = LoginForm(), form实例就是未绑定实例),即空表单,然后反馈到前端页面,等待用户填写内容。(2)用户在客户端填写了表单内容之后,将其提交给服务器,在Django的视图中接收数据(例如form = LoginForm(request.POST)),然后验证表单数据(form.is_valid())。结束之后,本次表单提交过程完毕。

2024-05-02 10:19:37 560 1

原创 Django加载静态文件出错‘staticfiles‘ is not a registered tag library.

在html文件中输入{% load staticfiles %},提示错误信息:'staticfiles' is not a registered tag library.模块在 Django 1.7 版本中被弃用,取而代之的是。在 Django 中,如果要加载静态文件,应该使用。这样就可以正常加载静态文件了。

2024-04-29 09:22:53 509

原创 Django框架静态文件位置(默认&自定义)

修改项目learning_log的settings.py文件。在原有的STATIC_URL内容下添加STATICFILES_DIRS内容。

2024-04-26 12:30:04 267

原创 Django框架模板位置(默认&自定义)

修改项目learning_log的settings.py文件。],},},如果自定义的模板路径为:.\learning_log\templates,需要做如下修改],},},通过修改‘DIRS’确定新的模板目录,通过将‘APP_DIRS’改为False,关闭Django按默认方式寻找模板文件。注意,在修改‘DIRS’使用了os.path.join用来生成路径,所以需要在settings.py文件中引入os,即:import os。

2024-04-26 10:59:28 454

原创 Django框架网站开发-知识点

根据模型类,生成数据库迁移文件(python manage.py makemigrations),执行数据库迁移操作(python manage.py migrate),从而在数据库中生成对应的表,表的名称是:应用名_模型名。1)可移植性强,网站更改使用的数据库类型,只需在settings.py文件中更新数据库配置,然后迁移数据库,而不需要对ORM进行任何修改。ORM:Object Relational Mapping 对象关系映射,是Django封装的数据模型层,实现对数据库的操作。

2024-04-24 09:06:51 303

原创 django项目中的manage.py

查看具体命令信息,以startapp为例:python manage.py help startapp。项目根目录下的manage.py文件,是对django-admin.py的简单封装。查看manage.py中的命令:python manage.py help。

2024-04-17 12:36:40 263

原创 使用Git进行版本控制

提交后使用命令git status查看状态,显示位于master分支,working tree clean,这是每次提交项目的可行状态时都希望看到的消息。如果两次提交之间,对现有文件的修改使用git commit -a提交,添加新文件需要git add .对hello_git.py文件进行修改,再运行git status命令时,发现有没有提交的修改。4、检出上次提交的版本,使用命令git checkout .撤销提交后的修改。如果提交记录混乱,可以在检出需要的版本之后,删除git仓库,并重建仓库。

2024-04-16 09:36:45 467

原创 Python 从0开始 一步步基于Django创建项目(13)将数据关联到用户

8、修改C:\D\Python\Python310\study\snap_gram\city_infos路径下的views.py文件,修改edit_entry函数。10、修改C:\D\Python\Python310\study\snap_gram\city_infos路径下的views.py文件,修改new_entry函数。9、修改C:\D\Python\Python310\study\snap_gram\city_infos路径下的views.py文件,修改new_city函数。将新主题关联到用户。

2024-03-28 09:08:08 1579

原创 Python 从0开始 一步步基于Django创建项目(12)使用装饰器login_required()限制对页面的访问

3、为了实现重定向,修改city_infos的setting.py文件。该文件位于项目根目录:C:\D\Python\Python310\study\snap_gram\snap_gram。实施方法:在city_infos的views.py文件中,引入装饰器,并在所有视图函数前应用装饰器。为了防止此类情况,需要在views.py文件除index函数外的,所有函数前加装装饰器。除‘主页’和‘注册’页之外的所有页面,都只有在用户登录后才能访问。1、使用import引入装饰器。2、在视图函数前使用装饰器。

2024-03-28 07:11:54 680

原创 Python 从0开始 一步步基于Django创建项目(11)注册新用户

该函数中使用了UserCreationForm表单类,以及login()方法。需要再文件中import这两项内容。编写URL对应的视图函数register。添加‘注册新用户’URL。添加‘注册新用户’链接。

2024-03-28 06:39:43 1004

原创 Python 从0开始 一步步基于Django创建项目(10)用户登录和注销

在这一步中,html文件是我们自定义的注销页面,所以不能放在C:\D\Python\Python310\study\snap_gram\users\templates\registration路径下。3)新建C:\D\Python\Python310\study\snap_gram\users\templates\users路径下的logged_out.html文件。1)修改C:\D\Python\Python310\study\snap_gram\users路径下的urls.py文件。

2024-03-28 06:15:07 906

原创 Python 从0开始 一步步基于Django创建项目(9)删除条目

城市删除成功后,不在出现在城市列表页面,同时通过级联删除的方式,删除了与该城市关联的所有条目信息。点击删除后,跳转至确认删除页面,执行删除或取消。在城市列表页面,每个城市名称后,添加删除链接。

2024-03-27 09:12:43 449

原创 Python 从0开始 一步步基于Django创建项目(8)使用表单编辑既有条目

如果是GET方法,或者提交数据未通过检查,则根据Entry、City、EntryForm实例信息,生成context,并用context渲染endit_entry.html.在new_entry.html中使用的是city.id,因为city的id是entry的外键,通过这个id知道该条目应该隶属于那个city。在endit_entry.html中使用的是entry.id,通过id知道修改的是哪个条目即可。因为是对既有数据进行修改,就不需要创建新的数据类,即不需要创建新的‘表单类’。

2024-03-27 08:00:15 673

原创 Python 从0开始 一步步基于Django创建项目(7)简易网站中的表单

让用户输入,并提交信息的网页中,包含表单。也就是说,表单是用户编辑页面中的一个组成部分,其余的部分还可以包括文本、链接、按钮等。在之前的项目实现中,要修改数据库中的内容,需要使用Admin site,用管理员登录。在本文中,将在页面上,由用户对数据库内容进行修改,也就是用户提交表单,表单中包含要修改的数据。本文实现功能包括:1、新建‘城市’2、新建特定城市的‘信息’具体实施如下。

2024-03-25 18:46:14 703

原创 Python 从0开始 一步步基于Django创建项目(6)实现一个简易网站

该‘city_id’就是urls.py文件中,path('cities/<int:city_id>/',views.city,name='city')语句中的<int:city_id>。模板标签{% url 'city_infos:index'%}生成一个URL,该URL与在city_infos/urls.py中定义的名为'index'的URL模式匹配。在为每个city生成的url链接中,加入了city.id信息,该信息将传递给views文件中的city函数,用于提取关于城市的具体信息。

2024-03-25 07:21:35 1266

原创 Python 从0开始 一步步基于Django创建项目(5)注册&删除Admin site管理员账户

退出shell时,先按下ctrl+z,然后‘回车’。启动Django shell执行删除。

2024-03-23 18:13:22 146

原创 Python 从0开始 一步步基于Django创建项目(4)应用Django shell查看数据模型

在《Python 从0开始 一步步基于Django创建项目(3)》中已经向数据模型city,添加了两条数据:‘北京’、‘墨尔本’。又向数据模型entry中添加了若干条数据,分别与‘北京’、‘墨尔本’关联。而是把City当做外键的,相关模型的小写名称、下划线和单词set的组合。Django shell是Django提供的交互式环境,可以通过编程的方式查看数据模型中的数据。3、查看模型City、Entry中的所有数据及其ID。2、查看模型City、Entry中的所有数据。5、查看与‘北京’相关联的条目。

2024-03-23 18:05:50 558

原创 Python 从0开始 一步步基于Django创建项目(3)使用Admin site管理数据模型

打开C:\D\Python\Python310\study\snap_gram\city_infos路径下的admin.py文件。要管理的模型,就是在《Python 从0开始 一步步基于Django创建项目(2)创建应用程序&数据模型》中定义的:City、Entry。此处创建的管理员的Username和Password都是sg_admin。Django提供的admin site,使得网站管理员,能够轻松管理网站的数据模型。3、在admin site中注册要管理的模型。6、点击对应条目进行编辑。

2024-03-23 17:30:53 432

原创 Python 从0开始 一步步基于Django创建项目(2)创建应用程序&数据模型

1)在控制台输入命令python manage.py makemigrations city_infos,生成数据库更新文件0001_initial,其路径是:C:\D\Python\Python310\study\snap_gram\city_infos\migrations。1)打开文件models.py,其路径是:C:\D\Python\Python310\study\snap_gram\city_infos。2)编写数据类,这里编写了两个数据类,城市类,城市信息类。2、编写应用程序的数据类。

2024-03-22 21:29:47 499

原创 Python 从0开始 一步步基于Django创建项目(1)

完成后,在项目根目录C:\D\Python\Python310\study\snap_gram下新增如下内容。在C:\D\Python\Python310\study\snap_gram\snap_gram下也有新增。在C:\D\Python\Python310\study\snap_gram\sg_env\Scripts路径下,新增文件夹和文件若干。在C:\D\Python\Python310\study\snap_gram\snap_gram下也有新增。在‘项目根目录’下,新增sg_env文件夹。

2024-03-22 08:23:57 606

原创 Python Windows系统 虚拟环境使用

3)执行命令:python -m venv ll_env,即可创建一个名为ll_env的虚拟环境。4)检查learning_log目录下,新创建了一个名为ll_env的子文件夹。环境激活后,可在环境中安装包,这些包只在环境处于激活状态时才能使用。1)为项目新建一个目录(比如:目录命名为learning_log)3)虚拟环境激活后,在命令行头部的(ll_env)消失。3)虚拟环境激活后,在命令行头部显示(ll_env)目录下,并且该目录中有一个名为。2)运行deactivate。2)在终端中切换到这个目录。

2024-03-21 18:12:32 323

原创 Python 使用requests模块 执行Web API调用 获取网站数据并可视化

再使用r.json()方法,将获得的数据保存在‘字典’response_dict中。使用网站提供的API可以使用requests.get方法获得网站数据。当r.status_code为200是,表明获得的数据是完整的。对字典中的数据结构进行整理,筛选,可以进一步实现数据可视化。网站数据保存在变量r中。

2024-03-21 12:22:00 452

原创 Python 使用Matplotlib绘制简单地图

需要使用cartopy库。在安装该库之前,需要先安装如下库。

2024-03-21 10:00:00 362

原创 Python 解析json文件 使用Plotly绘制地理散点图(更改配色)

1、根据地震烈度,使用不同颜色的点标记:在px.scatter_geo中传递参数:color='mags'。本文建立在《Python 解析json文件 使用Plotly绘制地理散点图》文章基础之上。2、更改‘渐变色’方案,改变标记点配色。1、未设置color参数时。2、使用默认渐变配色方案时。3、使用自选渐变配色方案时。

2024-03-21 08:46:25 355

原创 Python 数据分析模块pandas 如何创建DataFrame

是 Python 内置函数,用于将多个可迭代对象(例如列表、元组等)中对应位置的元素打包成一个个元组,然后返回由这些元组组成的迭代器。这样可以方便地将多个列表或元组中的数据一一对应地组合起来。以下用两种方式分别创建DataFrame。例如,如果有两个列表。

2024-03-21 08:35:50 429

原创 Python 解析json文件 使用Plotly绘制地理散点图

Plotly Express 中的函数是用于创建地理散点图的函数。它允许用户轻松地在地图上绘制数据点,每个数据点表示一个地理位置,并且可以根据数据中的某些属性来自定义数据点的颜色、大小等。data_frame: 包含数据的 DataFrame 对象。lat和lon: 分别指定纬度和经度数据所在的列名。locations: 指定用于标识地理位置的列名。color和size: 分别指定数据点的颜色和大小所对应的列名。hover_name和hover_data: 分别指定悬停时显示的标签和其他数据。

2024-03-20 20:24:36 1378

原创 Python 使用Plotly绘制柱状图

目标:统计三个6面骰子,各投掷一次,三次投掷点数之和的结果分布。1)不需要额外添加字体,就能正确显示中文。2)绘制后的图形可以与用户交互。

2024-03-20 10:00:00 571

原创 Python 解析CSV文件 使用Matplotlib绘图

例如:"0.0","2016-01-03","1","3","2016","Birmingham","BHM","Birmingham, AL","Alabama","39","46","32","33","4.33":comma-separated values,是在文件中存储一系列以‘,’分隔的值。数据存储在CSV文件中,使用Matplotlib实现数据可视化。本文使用的CSV文件是一组天气数据。

2024-03-20 09:38:06 737

Python 解析json文件 使用Plotly绘制地理散点图

eq_data_1_day_m1.json

2024-03-20

Python 解析天气CSV文件 使用Matplotlib绘图

CSV文件头:"Data.Precipitation","Date.Full","Date.Month","Date.Week of","Date.Year","Station.City","Station.Code","Station.Location","Station.State","Data.Temperature.Avg Temp","Data.Temperature.Max Temp","Data.Temperature.Min Temp","Data.Wind.Direction","Data.Wind.Speed"

2024-03-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除