PWA 和 Django #什么是渐进式 Web 应用程序?

王林
发布: 2024-09-10 14:31:09
原创
811 人浏览过

最初发布于 Substack: https://andresalvareziglesias.substack.com/p/pwa-and-django-1-what-is-a-web-application?r=1ymfiv

当前的网络应用程序不仅仅是显示交互式信息的网页。有时,它们的行为几乎就像本机应用程序一样。他们使用什么样的魔法来做到这一点?本系列文章将回答这个问题...

PWA and Django #What is a Progressive Web Application?

什么是渐进式 Web 应用程序

我喜欢 Mozilla 开发者网站 (https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps) 上 PWA 的定义:

渐进式 Web 应用程序 (PWA) 是一种使用 Web 平台技术构建的应用程序,但提供类似于特定于平台的应用程序的用户体验。与网站一样,PWA 可以通过单个代码库在多个平台和设备上运行。与特定于平台的应用程序一样,它可以安装在设备上,可以在离线和后台运行,并且可以与设备和其他已安装的应用程序集成。

它是本机应用程序和网页之间的混合体,这要归功于当今网络浏览器的令人难以置信的功能,例如:

  • 嵌入式数据库
  • 线下工作者
  • 桌面和移动操作系统集成
  • 等等

在本系列文章中,我们将在 Google Project IDX 的帮助下,使用我们喜爱的 Django 开发一个离线且可安装的渐进式 Web 应用程序。

创建演示环境

创建 github 存储库:

PWA and Django #What is a Progressive Web Application?

在 IDX 中创建一个新应用程序并导入该存储库:

PWA and Django #What is a Progressive Web Application?

从 IDX 控制台初始化 Django 应用程序:

python -m venv ~/.venv
source ~/.venv/bin/activate

mkdir src
cd src

echo "django" > requirements.txt
pip install --upgrade pip
pip install -r requirements.txt

django-admin startproject djangopwa
登录后复制

进行初始迁移并运行服务器:

python manage.py migrate
python manage.py runserver
登录后复制

在项目 https://github.com/arifnd/nix-idx/ 的帮助下创建 IDX 文件以启用嵌入式预览,该项目编译了多个 IDX 配置:

cd ~/djangopwa 
wget https://raw.githubusercontent.com/arifnd/nix-idx/main/python/django/devserver.sh
cd ~/djangopwa/.idx
wget https://raw.githubusercontent.com/arifnd/nix-idx/main/python/django/dev.nix
登录后复制

注意:根据需要编辑默认的 dev.nix 和 devserver.sh 并重新启动 IDX 环境

然后,创建演示应用程序:

python manage.py startapp demo
登录后复制

添加一个空视图:

from django.shortcuts import render

def index(request):
    context = {}
    return render(request, "index.html", context)
登录后复制

创建到新应用程序的路线:

from django.contrib import admin
from django.urls import include, path

urlpatterns = [
    path("", include("demo.urls")),
    path('admin/', admin.site.urls),
]
登录后复制

再等几天,下一章就到了!

PWA and Django #What is a Progressive Web Application?

关于名单

在 Python 和 Docker 帖子中,我还会写一些其他相关主题,例如:

  • 软件架构
  • 编程环境
  • Linux操作系统
  • 等等

如果您发现了一些有趣的技术、编程语言或其他什么,请告诉我!我总是乐于学习新东西!

关于作者

我是 Andrés,一位来自帕尔马的全栈软件开发人员,我正在踏上提高编码技能的个人旅程。我也是一位自行出版的奇幻作家,以我的名字出版了四本小说。有什么问题都可以问我!

以上是PWA 和 Django #什么是渐进式 Web 应用程序?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!