Python 潮流周刊#38:Django + Next.js 构建全栈项目

△△请给“Python猫”加星标 ,以免错过文章推送

1992e42c43ce01add77f2494586a0cce.jpeg

你好,我是猫哥。这里每周分享优质的 Python、AI 及通用技术内容,大部分为英文。本周刊开源,欢迎投稿[1]。另有电报频道[2]作为副刊,补充发布更加丰富的资讯,欢迎关注。

提醒:本期有赠书活动,详见文末;春节期间,本周刊预计停更一周,祝大家春节快乐!

🦄文章&教程

1、使用 Django、Django REST 和 Next.js 构建全栈项目[3]

Django 和 Nextjs 是后端和前端开发中非常强大 Web 框架,这篇教程用 Django 4.2 和 Next.js 13 开发了一个餐厅菜单管理项目。

2、使用 SQL、Node.js、Django 和 Next.js 构建仪表板项目[4]

比上一则分享更为全面的全栈项目教程,除了实现 CURD 操作,还涉及仪表板、表单筛选、Tailwind CSS、不同数据库的使用,以及分别使用 Node.js 和 Django 构建后端等内容。

3、用 Profila 分析你的 Numba 代码[5]

Numba 是提升 Python 代码性能的常见方案。作者开源了一个 Profila[6] 库,专用于分析 Numba 代码本身的性能问题,文章介绍了它的使用方法,以及关于性能分析的三点局限性。

4、Python datetime 标准库的 10 个陷阱[7]

作者分析了datetime 模块的 10 个陷阱,同时介绍了主流的三方库的情况(例如 arrowpendulumDateTypeheliclockter),发现它们大多存在同样的问题。什么样才是更好的日期时间库?作者开源了一个库,试图解决文中的问题。

5、使用 Python 纠正语法的 4 种方法[8]

这里的“语法”指的是写作语法,不是编程语法。文章介绍了language-tool-pythonGramformerGingerpyaspeller 4 个库用于检查和自动纠正语法错误。

6、Python 调试技巧[9]

这是作者在 2023 PyCon Sweden 演讲的文字版,分享了他的调试思维、调试工具和技术,工具例如snooppdb/ipdbPuDBweb-pdbbirdseyeKolo 等等。

7、调试 Python 与 C 语言混合的项目[10]

调试很难,跨多语言调试更难。文章介绍了如何调试多语言问题,使用 GDB 来调试 Python+C 语言,定位和解决死锁问题,分享了一些调试的经验。

8、分析“使用 Python 和 2MB RAM 对一百万个 32 位整数进行排序”[11]

Guido 在 2008 年写了 Sorting a million 32-bit integers in 2MB of RAM using Python[12] ,这篇文章是对它作的分析解读。解决方案中用到了不太常见的模块:structarrayheapq ,也用了上下文管理器和生成器等技术。

9、使用 Python + Pylasu 实现语言解析器[13]

如何用 Python 开发一个解析器?这篇教程用Pylasu 定义 AST,使用ANTLR 生成解析器,实现从 ANTLR 解析树到 Pylasu AST 的转换,最后构建出带 CLI 的玩具编程语言解析器。

10、动态规划不是黑魔法[14]

动态规划什么编程技术?相比其它方案,它的特点和优势是什么?文章从常见编程问题出发,使用缓存、优化缓存、动态规划逐步深入,揭开动态规划的神秘面纱。

11、什么时候应避免静态类型检查?[15]

Python 支持用类型提示,但这并不是强制的。事实上,有很多情况下并不建议使用类型提示。typing 模块的这篇文档列举了一些不推荐使用类型提示的原因。

12、实用指南:用 Python 运行开源的 LLM[16]

在个人笔记本电脑上如何运行大语言模型?这篇教程介绍了在不同操作系统上运行llama.cpp 的完整过程,例如选择和下载模型、提示词设置、使用 GBNF 语法格式化 LLM 输出、流式响应、多模态模型等。

🎁Python潮流周刊🎁每 30 期为一季,第一季的精华内容已整理成一篇,方便你随时查看。在线访问地址:Python 潮流周刊第一季精华合集(1~30)[17]

🐿️项目&资源

1、excelCPU:用 Excel 实现的 16 位 CPU 和相关文件[18]

才发布一周就已近 3K star 的火爆项目!CPU.xlsx 文件提供了 16 位 CPU、16 个通用寄存器、128KB RAM 和 128x128 显示区域。使用 Python 进行编译。(star 3K)

2、whenever:万无一失的 Python 日期时间[19]

前文提及过的日期时间库,克服了标准库和其它三方库没有很好解决的一些问题。

3、DeepSeek-Coder:让代码自己编写[20]

它由一系列代码语言模型组成,每个模型都用 2T token 训练,提供多种型号尺寸,拥有高级代码补全能力,在各项基准测试中表现亮眼。(star 4.3K)

17e6266ff3eaf99e7d72f66e687d3408.png

与其它模型的基准测试评分对比

4、fastcrud:FastAPI 的异步 CRUD 操作[21]

特性有:完全异步、SQLAlchemy 2.0、强大的 CRUD、动态构建复杂查询、高级 SQL 联结、基于偏移或光标的分页、模块化可扩展、自动生成接口。

5、leptonai:简化 AI 服务构建的 Pythonic 框架[22]

让你轻松用 Python 代码构建 AI 服务,主要特性:良好的抽象、仅需几行代码即可启动模型、内置常见模型(如 Llama、SDXL、Whisper 等)的示例、自动批处理、后台任务等。(star 1.9K)

6、gpt-newspaper:用 GPT 创建个性化报纸[23]

让 AI 根据你的个人品味和兴趣来策划选题、撰写、设计和编辑内容,由 6 个专业 agent 组成,支持搜索网络最新内容,聚合知名的新闻源。

7、apprise:几乎适用于所有平台的通知推送[24]

纯 Python 开发的轻量型消息推送库,支持通过大多数服务发送通知,例如 Telegram、Discord、Slack、Amazon SNS、Gotify 等等等,支持短信、邮件、系统桌面等多种形式。(star 9.7K)

8、procrastinate:基于 PostgreSQL 的 Python 任务队列[25]

一个基于 PostgreSQL 的分布式任务处理库,提供 Django 集成,易于与 ASGI 框架一起使用。支持异步、周期任务、重试、任意任务锁等功能。

9、flent:灵活的网络基准测试工具[26]

它可以同时运行多个 netperf/iperf/ping 实例并聚合结果,通过交互式 GUI 和可扩展的绘图功能展示数据,支持本地和远程主机,支持采集 CPU 使用率、WiFi、qdisc 和 TCP 套接字统计信息等。

4568025d3720cda81d0b85bdcdcd505c.png

10、urllib3:新版本支持在浏览器发起 HTTP 请求[27]

urllib3 发布了 2.2.0 版本,支持在Pyodide 运行时中使用!后者是用在浏览器中的 Python 解释器,也是PyScriptJupyterlite 框架的技术基础。这对 Python 的前端开发有重大作用,未来可期。

11、gnuplotlib:基于 gnuplot 的 numpy 绘图后端[28]

Gnuplot 是一个强大的开源绘图工具,用于生成各种类型的二维和三维图表。这个项目将它与 Numpy 结合,充分利用数据处理和绘图能力。

12、history_rag:用 RAG 搭建中国历史问答应用[29]

RAG(检索增强生成)+向量数据库搭建一个中国历史知识问答应用,支持“Milvus方案“(本地)和“Zilliz Cloud Pipelines方案”(云上),提供基于gradio的 Web UI 界面。默认使用 GPT4 模型,可轻松切换其它 LLM。

🐢赠书福利

不定期的福利活动,本期赠书 5 本《AI 绘画实战:Midjourney从新手到高手》,开奖时间 2 月 10 日(春节)。请给 Python猫公众号发送数字“8038”,获取抽奖小程序码。

这本书介绍了 Midjourney 绘画的各种使用方法与技巧,从基础理论到实战应用,一本书轻松玩转当下最火的 AI 绘画,带你领略无限艺术可能。

9a39284a5e13ff27922124f54b57ea88.png

🐼欢迎订阅

  • 微信公众号[30]:除更新周刊外,还发布其它原创作品,并转载一些优质文章。(可加好友,可加读者交流群)

  • 博客[31] 及 RSS[32]:我的独立博客,上面有历年原创/翻译的技术文章,以及从 2009 年以来的一些随笔。

  • 邮件[33] 及 RSS[34]:在 Substack 上开通的频道,满足你通过邮件阅读时事通讯的诉求。

  • Github[35]:你可以获取本周刊的 Markdown 源文件,做任何想做的事!

  • Telegram[36]:除了发布周刊的通知外,我将它视为一个“副刊”,补充发布更加丰富的资讯。

  • Twitter[37]:我的关注列表里有大量 Python 相关的开发者与组织的账号。

参考资料

[1]

投稿: https://github.com/chinesehuazhou/python-weekly

[2]

电报频道: https://t.me/pythontrendingweekly

[3]

使用 Django、Django REST 和 Next.js 构建全栈项目: https://dev.to/koladev/building-a-fullstack-application-with-django-django-rest-nextjs-3e26

[4]

使用 SQL、Node.js、Django 和 Next.js 构建仪表板项目: https://dev.to/andrewbaisden/a-day-in-the-life-of-a-developer-building-a-dashboard-app-with-sql-nodejs-django-and-nextjs-5en7

[5]

用 Profila 分析你的 Numba 代码: https://pythonspeed.com/articles/numba-profiling/

[6]

Profila: https://github.com/pythonspeed/profila

[7]

Python datetime 标准库的 10 个陷阱: https://dev.arie.bovenberg.net/blog/python-datetime-pitfalls/

[8]

使用 Python 纠正语法的 4 种方法: https://www.listendata.com/2024/01/4-ways-to-correct-grammar-with-python.html

[9]

Python 调试技巧: https://www.syntaxerror.tech/syntax-error-11-debugging-python/

[10]

调试 Python 与 C 语言混合的项目: https://developer.nvidia.com/blog/debugging-mixed-python-and-c-language-stack/

[11]

分析“使用 Python 和 2MB RAM 对一百万个 32 位整数进行排序”: https://www.bitecode.dev/p/analyzing-sorting-a-million-32-bit

[12]

Sorting a million 32-bit integers in 2MB of RAM using Python: http://neopythonic.blogspot.com/2008/10/sorting-million-32-bit-integers-in-2mb.html

[13]

使用 Python + Pylasu 实现语言解析器: https://tomassetti.me/implement-parsers-with-pylasu/

[14]

动态规划不是黑魔法: https://qsantos.fr/2024/01/04/dynamic-programming-is-not-black-magic/

[15]

什么时候应避免静态类型检查?: https://typing.readthedocs.io/en/latest/source/typing_anti_pitch.html

[16]

实用指南:用 Python 运行开源的 LLM: https://christophergs.com/blog/running-open-source-llms-in-python

[17]

Python 潮流周刊第一季精华合集(1~30): https://pythoncat.top/posts/2023-12-11-weekly

[18]

excelCPU:用 Excel 实现的 16 位 CPU 和相关文件: https://github.com/InkboxSoftware/excelCPU

[19]

whenever:万无一失的 Python 日期时间: https://github.com/ariebovenberg/whenever

[20]

DeepSeek-Coder:让代码自己编写: https://github.com/deepseek-ai/deepseek-coder/

[21]

fastcrud:FastAPI 的异步 CRUD 操作: https://github.com/igorbenav/fastcrud

[22]

leptonai:简化 AI 服务构建的 Pythonic 框架: https://github.com/leptonai/leptonai

[23]

gpt-newspaper:用 GPT 创建个性化报纸: https://github.com/assafelovic/gpt-newspaper

[24]

apprise:几乎适用于所有平台的通知推送: https://github.com/caronc/apprise

[25]

procrastinate:基于 PostgreSQL 的 Python 任务队列: https://github.com/procrastinate-org/procrastinate

[26]

flent:灵活的网络基准测试工具: https://github.com/tohojo/flent

[27]

urllib3:新版本支持在浏览器发起 HTTP 请求: https://github.com/urllib3/urllib3/releases/tag/2.2.0

[28]

gnuplotlib:基于 gnuplot 的 numpy 绘图后端: https://github.com/dkogan/gnuplotlib

[29]

history_rag:用 RAG 搭建中国历史问答应用: https://github.com/wxywb/history_rag

[30]

微信公众号: https://img.pythoncat.top/python_cat.jpg

[31]

博客: https://pythoncat.top

[32]

RSS: https://pythoncat.top/rss.xml

[33]

邮件: https://pythoncat.substack.com

[34]

RSS: https://pythoncat.substack.com/feed

[35]

Github: https://github.com/chinesehuazhou/python-weekly

[36]

Telegram: https://t.me/pythontrendingweekly

[37]

Twitter: https://twitter.com/chinesehuazhou

4459d4378b61007c5e4bd1db10f7bc55.gif

如果你觉得本文有帮助

请慷慨分享点赞,感谢啦

 

  • 26
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: Python Django和Vue 3是目前非常流行的技术栈,结合这两个技术可以进行全栈开发商城项目Python Django是一个高效的后端框架,它提供了许多强大的功能和工具,如路由处理、数据库管理、身份验证等。使用Django可以快速构建稳定、安全的后端服务,为商城项目提供可靠的数据存储和处理。 而Vue 3是一种现代的前端框架,它提供了一种简洁明了的方式来构建用户界面。Vue 3的响应式数据绑定使得数据和视图之间的同步变得更加容易,并且它的组件化开发模式可以提高代码的可复用性和可维护性。 在开发商城项目中,可以使用Django作为后端提供接口和数据存储,同时使用Vue 3作为前端来展示和操作数据。通过Django的REST框架,可以创建API接口,提供商品列表、购物车操作、用户认证等功能。而Vue 3可以使用axios等HTTP库与后端进行交互,获取数据并展示在前端页面上。 此外,Vue 3的组件化开发模式可以将界面和功能拆分成独立的组件,便于开发和维护。可以将商品展示、购物车、登录注册等页面拆分成多个组件,实现组件间的数据共享和通信。 综上所述,使用Python Django和Vue 3进行全栈开发商城项目是十分切实可行的。Python Django作为后端提供数据接口和处理,Vue 3作为前端负责展示和操作数据。这样的技术栈有助于项目开发效率和代码的可维护性。 ### 回答2: Python Django和Vue3是一对非常强大的全栈开发工具,适用于构建现代化的商城项目Python Django是一个高级的Web开发框架,它提供了许多功能强大的工具和库,使得开发商城项目变得更加容易和高效。Django具有良好的可扩展性和模块化,可以轻松地处理数据模型、路由、视图和模板等方面的问题。此外,Django还提供了强大的身份验证、静态文件管理和安全性功能,这对于商城项目来说非常重要。 而Vue3是一个流行的前端框架,它提供了丰富的工具和组件,可以帮助我们构建出美观、高效的用户界面。Vue3采用了响应式数据绑定和虚拟DOM的技术,能够提供出色的性能和用户体验。在商城项目中,我们可以使用Vue3来构建商品展示页面、购物车、订单管理等各种前端功能。此外,Vue3还具有很好的插件集成能力,我们可以轻松地结合第三方插件来实现更多的功能需求。 在这个全栈开发过程中,Python Django和Vue3可以很好地配合使用。Django作为后端框架,负责处理业务逻辑、数据库管理和用户身份验证等方面;Vue3作为前端框架,负责构建用户界面、数据交互和动态展示等方面。两者之间可以通过RESTful API或GraphQL等方式进行数据交互,实现前后端的无缝对接。 总而言之,使用Python Django和Vue3进行全栈开发商城项目,可以高效、快速地构建出功能丰富、用户友好的商城平台。这对于提升用户体验、促进业务发展来说非常重要。 ### 回答3: Python Django和Vue3的全栈开发商城项目是基于PythonJavaScript技术栈的一种开发模式。在这个项目中,Python Django作为后端框架,负责处理数据业务逻辑,而Vue3作为前端框架,负责展示用户界面和与用户交互。 在这个项目中,可以利用Python Django提供的丰富的功能来构建商城后端Django有很好的ORM(对象关系映射)能力,可以让开发者通过定义模型类来操作数据库,包括对商品、用户、订单等数据进行增删改查。同时,Django还提供了强大的认证和授权机制,可以确保只有合法用户才能访问和操作相关数据。此外,Django还支持RESTful API开发,可以为前端提供数据接口供Vue3调用。 对于前端部分,Vue3是一个流行且功能强大的JavaScript框架,它基于组件化的思想,可以将复杂的用户界面划分成多个独立的组件,便于开发和维护。Vue3的响应式数据绑定机制可以让数据和界面保持同步,提供良好的用户体验。同时,Vue3还有丰富的扩展插件和工具库,可以方便地实现一些常见的前端功能,如表单验证、路由控制等。 在商城项目中,可以利用Vue3来实现用户注册、登录、商品列表展示、购买流程等前端功能。Vue3的单文件组件和路由机制可以帮助开发者组织代码并实现页面跳转和交互。同时,结合Vue3和Django提供的数据接口,可以实现前后端的数据交互和展示。 总的来说,Python Django和Vue3的全栈开发商城项目充分利用了PythonJavaScript的优势,通过后端和前端的协同工作,实现了一个功能完善、用户友好的商城应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Python猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值