分类目录归档:Django

simpleui美化admin+Admin自定义action


[TOC]

写在前面

今天在检索Django开源项目的时候发现了一个漂亮的管理后台,而且只需要pip安装一下,再将app注册到settings.py中,原本简陋的后台就被取代了,简直是不能更贴心。

项目地址

Gitee
Github
simpleui官方文档

如何使用

安装:
pip install django-simpleui
注册app:

#settings.py,注意要放到第一行
INSTALLED_APPS = [
      'simpleui',
      'django.contrib.admin',
      'django.con

Read more

使用get_queryset控制admin中内容展示


写在前面

因为本站的文章创作是在后台进行(不要问我为什么不搬到前台来,问就是懒),那如果有多个作者,应该限制该作者仅可以修改自己发布的文章
而且作者在修改自己的个人信息时,不应该将权限模块呈现出来,不然人均superuser,那我这个管理员就废废的了
由此引发了另外一个问题,本站是开源的,如果有人根据源码写了脚本,获取cookie和csrf_token,带上参数发起post请求更改权限呢?如果这么做有效的话,那就是一个严重的安全漏洞,所幸,测试之后发现除了展示给用户的部分,其他参数都是无效的
当然,对我而言担心是多余的,目前网站的用户只有我一个。
如果你想把本站源码修改为开放的博客平台,还有一

Read more

为网站添加APlayer控件


[TOC]

源代码和文档

Github
APlayer中文文档

准备工作

我默认你拥有Django基础知识,并且设备中安装了python和Django环境,会使用pip包管理工具

#安装Django
pip install django
#创建项目和app
django-admin startproject myproject
cd myproject
python manage.py startapp myplayer
#创建超级用户
python manage.py createsuperuser
#如果报错先迁移一下数据库
python manage.py makemigrations

Read more

使用Django做一个简单的文件服务器


写在前面

有时候想把资料存在云端,我们可以选择百度云,但是它给的实在太多了,而且下载的时候还限速,我就想要简单的上传下载功能,所以尝试用Django做了一个,在此记录一下。
本文主要讲models和admin的写法,前端只有很少一部分内容。

准备工作

#创建项目
django-admin startproject myproject
#创建app
python manage.py startapp uploader

修改配置

settings.py
添加以下路径:

#修改
INSTALLED_APPS = [
    'django.contrib.admin',
    &

Read more

Django删除超级用户


方法

#进入shell
python manage.py shell
#用户数据库
from django.contrib.auth.models import User
#查询用户
User.objects.filter()
#删除,如果超级用户状态被取消则把True改为False
User.objects.get(username="name", is_superuser=True).delete()

本站

#进入shell
python manage.py shell
#引入数据库
from accounts.models import BlogUser
#查询
B

Read more

简单的疫情可视化Django应用


写在前面

以前本站的疫情可视化只是一个简单的html页面,使用crontab定时任务更新数据,每天早上八点更新一次,这种方式存在诸多弊端,主要是无法拓展更多功能,但也有明显的好处,占用资源很少,不会影响服务器性能,也不会对网站安全造成影响,添加或移除该功能的时候也简单。总之,使用静态页面更像是在混吃等死。三天前我在查找资料的时候翻到了pyecharts中文文档,文档中介绍了如何将pyecharts整合到web框架,而且很贴心的给出前后端分离的教程,所以,我就依葫芦画瓢的搞了一通,替换掉了原本的静态页面。

准备工作

#创建虚拟环境
py -3 -m venv myproject_env #Win

Read more