分类目录归档:Django

在Django模板中安全地包含JavaScript数据

Django模板通常用于将数据传递到JavaScript代码。 不幸的是,如果实施不正确,这将打开HTML注入的可能性,从而引发XSS(跨站点脚本)攻击。

这是我在Django项目中遇到的最常见的安全问题之一。 实际上,我可能已经在每个相当大的Django项目中以某种形式看到了它。

很难[……]

继续阅读

如何在Django admin的巨大表格中进行搜索

大家好!

我们都知道Django管理员是Django的超酷工具。 您可以检查模型,并从表中添加/编辑/删除记录。 如果您熟悉Django,我相信您已经知道了。

我得到了一个任务:我们的客户想按一个字段在一个表中搜索。 看起来很容易,对吧? 好吧,棘手的部分是该表具有523.803.417[……]

继续阅读

生产环境集成Django和Vue.js

随着Python的普及和Vue.js的兴起,越来越多的开发人员希望将这两个框架一起使用来构建单页应用程序(SPA)。

我想出了一种在开发和生产环境中均可使用的Django-Vue集成策略。另外,它不需要额外的依赖关系。

我的方法涉及三个部分:

配置Vue以使用Django开发服务器[……]

继续阅读

使用celery和Django处理异步任务-part2

定期任务
我们经常需要在django项目中定期运行任务,在此芹菜可以通过芹菜节拍满足我们的需求,芹菜节拍不过是一个调度程序,该调度程序定期执行目标,并且可以隐式和显式定义。

请确保一次运行一个计划程序,否则一次将导致重复的任务

根据您所在的时区,在settings.py中设置时区,我们[……]

继续阅读

使用celery和Django处理异步任务

介绍
我们可能需要一些可以安排一些任务并定期运行一些任务或异步处理长任务的东西,而这一切都可以通过在Django Project中使用Celery来实现。

什么是Celery?
Celery是一个专注于实时处理的任务队列,它还支持任务调度。 Celery快速,简单,高度可用且灵活。[……]

继续阅读

Django开发人员常犯的7个错误

Django是强大的Web框架,但越强大责任也大。 在本文中,我们将介绍即使经验丰富的Django开发人员也会犯的常见错误,但是大多数成功的Django项目或早或晚都需要处理这些错误。

重新发明轮子
Django具有许多现成的功能,甚至在第三方软件包中还有更多功能。 在写东西之前,尝试“搜索[……]

继续阅读

通过SQL了解Django中的分组依据-Django QuerySet和SQL并排

在任何类型的ORM中,聚合都是造成混乱的根源,而Django也是如此。 该文档提供了各种示例和备忘单,它们演示了如何使用ORM对数据进行分组和聚合,但是我决定从另一个角度进行研究。

在本文中,我将QuerySet和SQL并排放置。 如果您最喜欢SQL,那么这是适合您的Django GROUP[……]

继续阅读

Django是2020年我的首选应用程序框架

Django是一个成熟而强大的Web应用程序框架,提供了许多“包含电池”功能。 对于您如何使用它,这是相当自以为是的,这减轻了开发人员的许多认知负担。

采用Django或任何自以为是的框架,与任何关系都非常相似。 是的,存在缺陷和小小的挫折,但是如果您在其中投入并投入自己(以及您的团队),您将[……]

继续阅读

使用Django和Postgres进行全文搜索

这些天,我需要全文搜索。这个区块中最酷的工具是Elastic Search和Sorl:他们快速,灵活,资源消耗沉重并且需要配合Java运行。

放弃这些选项后,我剩下了Xapian和postgres全文搜索的功能,而xapian似乎功能更丰富,我决定从postgres开始,因为它与django进[……]

继续阅读

Django3中直接添加Websockets方式

现在Django 3.0附带了对ASGI的支持,将Websockets添加到Django应用中不需要任何额外的依赖关系。 在本文中,您将学习如何通过扩展默认的ASGI应用程序来使用Django处理Websocket。 我们将介绍如何在示例ASGI应用程序中处理Websocket连接,发送和接收数据以[……]

继续阅读