Django 入门实战:从环境搭建到构建你的第一个 Web 应用

Django 入门实战:从环境搭建到构建你的第一个 Web 应用

恭喜你选择 Django 作为你学习 Python Web 开发的起点!Django 是一个强大、成熟且功能齐全的框架,非常适合构建中大型的 Web 应用程序。本篇将通过一个简单的例子,带你走完 Django 开发的核心流程。

我们将构建一个非常简单的应用:一个显示项目列表的页面,这些项目数据存储在数据库中,并且可以通过 Django 自带的管理后台进行管理。

我们将要完成的步骤:

  1. 搭建开发环境 (Python, pip, 虚拟环境, Django)。
  2. 创建一个 Django 项目。
  3. 创建一个 Django 应用。
  4. 定义一个简单的视图 (View)。
  5. 配置 URL 路由 (URL Dispatcher)。
  6. 使用模板 (Template) 渲染 HTML。
  7. 定义模型 (Model),与数据库交互。
  8. 使用 Django 自带的管理后台管理数据。
  9. 在页面上显示数据库中的数据。

开始吧!

Part 1: 环境搭建

首先,确保你的电脑已经安装了 Python 和 pip。建议使用 Python 3.7 或更高版本。

  1. 创建和激活虚拟环境:

    使用虚拟环境是 Python 开发的最佳实践,它可以隔离不同项目之间的依赖,避免冲突。

    打开命令提示符 (Command Prompt) 或 PowerShell。

    • 创建一个新的虚拟环境(例如命名为 myproject_venv):

      Bash

      python -m venv myproject_venv
      

      这会在当前目录下创建一个名为 myproject_venv 的文件夹。

    • 激活虚拟环境:

      • Windows 命令提示符 (Command Prompt): Bash

        myproject_venv\Scripts\activate.bat
        
      • Windows PowerShell: PowerShell

        myproject_venv\Scripts\Activate.ps1
        
        如果遇到执行策略问题,可以尝试运行 Set-ExecutionPolicy RemoteSigned -Scope CurrentUser 并同意。

      激活成功后,你的命令行提示符前面会显示虚拟环境的名称,例如 (myproject_venv) C:\YourProject>

  2. 在虚拟环境中安装 Django:

    确保虚拟环境已激活,然后使用 pip 安装 Django。

    Bash

    pip install django
    

    等待安装完成。

  3. 验证 Django 安装:

    可以运行以下命令检查 Django 是否成功安装以及版本号。

    Bash

    django-admin --version
    

    如果显示版本号,说明安装成功。

Part 2: 创建一个 Django 项目

Django 项目是整个 Web 应用的容器,包含配置和设置。

  1. 在项目目录下创建 Django 项目:

    在你的项目目录(例如,你刚刚创建虚拟环境的那个目录)下,运行以下命令:

    Bash

    django-admin startproject myproject .
    
    • django-admin 是 Django 的命令行工具。
    • startproject 是一个命令,用于创建一个新项目。
    • myproject 是你给项目取的名称。
    • 后面的 . 表示在当前目录创建项目文件和目录,而不是在当前目录下再创建一个 myproject 子目录。

    成功运行后,你的项目目录下会生成以下文件和目录结构:

    .
    ├── manage.py
    └── myproject├── __init__.py├── asgi.py├── settings.py├── urls.py└── wsgi.py
    
    • manage.py: 一个命令行工具,用于与项目进行各种交互,如运行服务器、执行数据库迁移等。
    • myproject/: 项目的配置目录。
      • settings.py: 项目的主要配置文件。
      • urls.py: 项目的 URL 路由配置文件。
      • wsgi.py, asgi.py: 用于部署的服务器入口文件。
  2. 运行开发服务器:

    进入包含 manage.py 文件的项目根目录,运行以下命令:

    Bash

    python manage.py runserver
    

    服务器会启动,默认运行在 http://127.0.0.1:8000/

    打开你的浏览器,访问 http://127.0.0.1:8000/。如果看到一个带有火箭图标的“The install worked successfully! Congratulations!”页面,说明你的 Django 项目已经成功创建并运行起来了!

    在命令行窗口中,按下 Ctrl + C 可以停止开发服务器。

Part 3: 创建一个应用 (App)

Django 鼓励将项目功能拆分成独立、可复用的“应用”(App)。每个 App 通常负责一个特定的功能模块。

  1. 在项目根目录下创建应用:

    确保你仍在包含 manage.py 的项目根目录下,运行以下命令:

    Bash

    python manage.py startapp myapp
    
    • startapp 是用于创建一个新应用的命令。
    • myapp 是你给应用取的名称。

    成功运行后,你的项目目录下会新增一个 myapp 目录:

    .
    ├── manage.py
    ├── myenv         # 你的虚拟环境目录
    ├── myproject     # 项目配置目录
    └── myapp         # 新增的应用目录├── migrations    # 数据库迁移文件目录├── __init__.py├── admin.py      # 应用的管理后台配置├── apps.py       # 应用的配置├── models.py     # 应用的模型定义├── tests.py      # 应用的测试└── views.py      # 应用的视图定义
    
  2. 将应用添加到项目设置:

    新创建的应用需要添加到项目的配置文件 settings.py 中,让 Django 知道这个应用的存在。

    • 打开 myproject/settings.py 文件。
    • 找到 INSTALLED_APPS 列表。
    • 在列表中添加你的应用名称 'myapp'
    Python

    # myproject/settings.pyINSTALLED_APPS = ['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','myapp', # <--- 在这里添加你的应用名称
    ]# ... 文件其他内容
    

Part 4: 定义第一个视图 (View)

视图负责接收 Web 请求并返回响应。我们先创建一个简单的视图,只返回一段文本。

  1. 打开应用的 views.py 文件: myapp/views.py

  2. 编写一个简单的函数式视图 (FBV):

    Python

    # myapp/views.pyfrom django.http import HttpResponse # 需要导入 HttpResponse 类def index(request):# 这个函数接收一个 HttpRequest 对象作为参数 (命名为 request 是约定)# 它返回一个 HttpResponse 对象,其中包含了要发送给浏览器的文本内容return HttpResponse("Hello, Django!")
    

Part 5: 配置 URL 路由 (URL Routing)

我们需要告诉 Django,当用户访问某个特定的 URL 时,应该由哪个视图来处理。这通过配置 URL 路由实现。通常,一个应用有自己的 urls.py 文件,然后项目的根 urls.py 包含应用的 URL。

  1. 在应用目录中创建 urls.py 文件:

    在 myapp 目录下创建一个新的 Python 文件 urls.py。

  2. 编辑应用的 urls.py:

    定义一个 urlpatterns 列表,其中包含 URL 模式与视图函数的对应关系。

    Python

    # myapp/urls.pyfrom django.urls import path # 需要导入 path 函数
    from . import views # 从当前应用目录导入 views.py# urlpatterns 是一个列表,定义了 URL 模式
    urlpatterns = [# path(route, view, name=None)# route: 匹配的 URL 路径 (这里是空字符串 '', 表示匹配应用 URL 的根路径)# view: 处理该请求的视图函数 (views.index)# name: 给这个 URL 起一个名字,方便在模板或代码中引用 (可选但推荐)path('', views.index, name='index'),# 你可以在这里添加更多 path() 来定义其他 URL# path('about/', views.about, name='about'),
    ]
    
  3. 编辑项目的根 urls.py:

    打开 myproject/urls.py 文件,包含 myapp 应用的 URL 配置。

    Python

    # myproject/urls.pyfrom django.contrib import admin
    from django.urls import path, include # 需要导入 include 函数urlpatterns = [# 这是 Django 内置管理后台的 URLpath('admin/', admin.site.urls),# 使用 include() 将 myapp 应用的 URL 配置包含进来# 当用户访问以 'myapp/' 开头的 URL 时,Django 会将剩余的 URL 部分传递给 myapp.urls 去处理path('myapp/', include('myapp.urls')),# 你也可以直接在项目根 urls.py 中定义简单的 URL 模式# path('', views.home, name='home'), # 如果你的 home 视图在项目根目录的 views.py 中
    ]
    
  4. 测试第一个视图和 URL:

    确保你在项目根目录(manage.py 所在目录),运行开发服务器:

    Bash

    python manage.py runserver
    

    打开浏览器,访问 http://127.0.0.1:8000/myapp/。你应该能看到页面上显示“Hello, Django!”。这表明你成功地将一个 URL 映射到了一个视图,并返回了响应。

Part 6: 使用模板 (Template)

直接在视图中返回 HTML 字符串不适合复杂的页面。Django 使用模板来分离视图逻辑和页面展示。

  1. 创建模板目录和模板文件:

    按照 Django 的约定,模板文件通常放在应用的 templates 目录下的一个与应用同名的子目录中。

    • myapp 目录下创建 templates 目录:myapp/templates/
    • templates 目录下创建 myapp 子目录:myapp/templates/myapp/
    • myapp/templates/myapp/ 目录下创建一个新的 HTML 文件,例如 index.html
  2. 编辑模板文件 (myapp/templates/myapp/index.html):

    编写一些 HTML 代码,并使用 Django 模板语言 (DTL) 显示一个变量。

    HTML

    <!DOCTYPE html>
    <html>
    <head><title>我的第一个 Django 模板</title>
    </head>
    <body>{# 这是一个模板注释 #}<h1>{{ greeting }}</h1> {# 使用 {{ 变量名 }} 显示从视图传递的变量 #}<p>这是一个使用模板渲染的页面。</p>
    </body>
    </html>
    
  3. 修改视图以使用模板:

    修改 myapp/views.py 中的 index 视图,使用 render() 快捷函数来加载和渲染模板。render() 函数会自动查找 templates 目录。

    Python

    # myapp/views.py# from django.http import HttpResponse # 不再直接返回 HttpResponse
    from django.shortcuts import render # 需要导入 render 函数def index(request):# 准备传递给模板的数据 (上下文)context = {'greeting': 'Hello from Template Context!', # 定义一个变量 'greeting''other_variable': '...' # 可以传递更多变量}# 使用 render 函数加载并渲染模板# render(request, template_name, context=None)# request: HttpRequest 对象# template_name: 模板文件相对于某个 templates 目录的路径 (如 'myapp/index.html')# context: 传递给模板的数据字典return render(request, 'myapp/index.html', context)
    
  4. 测试使用模板的视图:

    确保服务器正在运行,再次访问 http://127.0.0.1:8000/myapp/。你应该能看到一个标准的 HTML 页面,其中 H1 标题显示着“Hello from Template Context!”。这表明你成功地将数据从视图传递到了模板并进行了渲染。

Part 7: 使用模型 (Model) 与数据库

Django 的 ORM 让你用 Python 类定义数据结构,然后自动映射到数据库。

  1. 数据库设置:

    Django 默认使用 SQLite 数据库,配置在 settings.py 的 DATABASES 字典中。对于入门而言,默认设置即可,无需安装额外数据库软件。

  2. 定义第一个模型:

    打开应用的 models.py 文件 (myapp/models.py),定义一个简单的 Item 模型。

    Python

    # myapp/models.pyfrom django.db import models # 需要导入 models 模块class Item(models.Model): # 继承自 models.Model# 定义模型字段,对应数据库表的列name = models.CharField(max_length=100) # 字符串字段,最大长度 100created_at = models.DateTimeField(auto_now_add=True) # 日期时间字段,创建时自动设置当前时间# __str__ 方法定义了模型对象在被打印或在管理后台显示时的字符串表示def __str__(self):return self.name# 你可以在这里定义其他字段,如 models.IntegerField(), models.TextField(), models.BooleanField(), models.ForeignKey() 等
    
  3. 创建数据库迁移 (Migrations):

    模型定义完成后,需要告诉 Django 根据模型的变化创建数据库迁移文件。

    • 确保你在项目根目录(manage.py 所在目录),并且虚拟环境已激活。
    • 运行命令: Bash

      python manage.py makemigrations myapp # 指定应用名称
      
    • Django 会检测到你在 myapp/models.py 中定义了 Item 模型,并在 myapp/migrations/ 目录下生成一个 Python 文件(例如 0001_initial.py),记录了创建 Item 表的步骤。
  4. 应用数据库迁移:

    生成迁移文件后,需要将其应用到数据库,创建实际的数据库表。

    • 确保你在项目根目录,虚拟环境已激活。
    • 运行命令: Bash

      python manage.py migrate
      
    • Django 会执行所有未应用的迁移,包括你的应用和 Django 内置应用(如用户认证、管理后台)的迁移,创建所需的数据库表。如果使用 SQLite,你会在项目根目录看到一个 db.sqlite3 文件被创建或更新。

Part 8: 使用 Django 自带的管理后台管理数据

Django 的杀手级功能之一是自动化的管理后台,可以让你方便地查看和管理数据库中的数据。

  1. 创建超级用户 (Superuser):

    你需要创建一个超级用户账号来登录管理后台。

    • 确保你在项目根目录,虚拟环境已激活。
    • 运行命令: Bash

      python manage.py createsuperuser
      
    • 按照提示输入用户名、邮箱(可选)和密码。密码输入时不会显示字符,输完按回车即可。
  2. 注册模型到管理后台:

    默认情况下,你的自定义模型不会显示在管理后台。你需要显式地注册它们。

    • 打开应用的 admin.py 文件 (myapp/admin.py)。
    • 导入你的模型,并使用 admin.site.register() 函数注册。
    Python

    # myapp/admin.pyfrom django.contrib import admin
    from .models import Item # 导入你的 Item 模型# 在管理后台注册 Item 模型
    admin.site.register(Item)# 你也可以在这里注册其他模型
    # from .models import AnotherModel
    # admin.site.register(AnotherModel)
    
  3. 访问管理后台并添加数据:

    • 确保开发服务器正在运行 (python manage.py runserver)。
    • 打开浏览器,访问 http://127.0.0.1:8000/admin/
    • 使用你刚刚创建的超级用户账号登录。
    • 登录成功后,你应该能在侧边栏看到你的应用名称(myapp)以及下面的 Items
    • 点击 Items,然后点击右上角的“添加 Item”按钮。
    • 输入一些 Item 数据(只需要输入 Name 字段,created_at 会自动生成),点击“保存”。添加几个 Item。

Part 9: 在页面上显示数据库中的数据

现在,我们回到前面创建的页面,修改视图和模板,从数据库中获取 Item 数据并显示出来。

  1. 修改视图,从数据库获取数据:

    打开 myapp/views.py 文件,修改 index 视图,使用 ORM 查询 Item 模型的数据。

    Python

    # myapp/views.pyfrom django.shortcuts import render
    from .models import Item # 需要导入你的 Item 模型类def index(request):# 使用 ORM 从数据库获取所有的 Item 对象# Item.objects 是一个管理器,提供数据库查询接口# .all() 方法获取所有的 Item 对象,返回一个 QuerySet (类似列表)items_list = Item.objects.all()# 准备传递给模板的数据context = {'greeting': '我的项目列表','items': items_list # 将获取到的 Item 列表传递给模板,变量名为 'items'}# 渲染模板return render(request, 'myapp/index.html', context)
    
  2. 修改模板,显示获取到的数据:

    打开 myapp/templates/myapp/index.html 文件,使用 Django 模板语言循环遍历 items 列表并显示每个 Item 的信息。

    HTML

    <!DOCTYPE html>
    <html>
    <head><title>我的项目列表</title>
    </head>
    <body><h1>{{ greeting }}</h1><h2>项目列表:</h2>{% if items %} {# 检查 items 列表是否存在且非空 #}<ul>{% for item in items %} {# 模板标签:循环遍历 items 列表,每次循环将当前元素赋给 item #}<li>{# 显示当前 item 对象的属性 #}{{ item.name }} (创建时间: {{ item.created_at }})</li>{% endfor %}</ul>{% else %}{# 如果 items 列表为空,显示此段落 #}<p>目前还没有项目数据。</p>{% endif %}</body>
    </html>
    
  3. 最终测试:

    确保开发服务器正在运行,访问 http://127.0.0.1:8000/myapp/。现在,你应该能看到页面上显示着“我的项目列表”,并且下方列出了你在管理后台添加的所有 Item 数据!

Part 9: 总结回顾

恭喜你!你已经完成了你的第一个 Django Web 应用的入门开发。在这个过程中,你接触并使用了 Django 的核心组件和开发流程:

  • 虚拟环境和 pip: 搭建和管理项目环境。
  • django-adminmanage.py 创建项目和应用,运行服务器,执行管理任务。
  • 项目和应用结构: 理解 Django 的模块化组织方式。
  • 视图 (View): 编写处理请求的 Python 函数。
  • URL 路由 (URLconf): 配置 URL 与视图的映射。
  • 模板 (Template): 使用 Django 模板语言渲染 HTML 页面。
  • 模型 (Model) 和 ORM: 使用 Python 类定义数据结构,并通过 ORM 与数据库交互。
  • 数据库迁移 (Migrations): 管理数据库 schema 变化。
  • 管理后台 (Admin Site): 利用自动生成的界面管理数据。

这只是 Django 的冰山一角,但它涵盖了构建任何 Django 应用都必需的核心概念和步骤。接下来,你可以深入学习 Django 的更多功能,例如:

  • 基于类的视图 (CBV): 更强大的视图组织方式。
  • 表单 (Forms): 处理用户输入和验证。
  • 用户认证和授权: 构建用户系统。
  • 静态文件和媒体文件: 处理 CSS、JS、图片等资源。
  • 测试: 编写自动化测试用例。
  • 部署: 将应用部署到生产环境。

希望这个入门实战指南能帮助你顺利迈进 Django 的大门!继续探索和实践吧!


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/78211.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Unity 打包后 无阴影 阴影不显示

在项目设置里面->质量 这里面显示的是打包之后的质量 PS:注意运行质量 点击左键选择运行质量,这俩不一致就会导致,运行有阴影但是打包出来的平台没有阴影,原因就在这. 质量等级选择好之后 往下滑,在这里打开阴影,如果距离过远不显示阴影,就增加阴影距离.

python——面向对象编程

一、编程思想 面向过程编程&#xff08;典型&#xff1a;c语言&#xff09;&#xff1a;是一种以过程为中心的编程思想。它强调流程化、线性化、步骤化的思考方式&#xff0c;实现思路就是函数。 面向对象编程&#xff1a;强调整体性和差异性。它将任何事物看做一个统一整个&…

宿主机和容器 ping 不通域名解决方法

目录 一、问题描述 二、宿主机解决方法 三、容器解决办法 一、问题描述 宿主机是Ubuntu&#xff0c;在宿主机上 ping 不通域名&#xff1a;xxxx.cn&#xff0c;但是个人电脑能 ping 通。 同时宿主机上的启动的k8s容器也无法ping通。 二、宿主机解决方法 ①编辑文件&#xff…

windows作业job介绍

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、作业job是什么&#xff1f;二、使用步骤1.代码示例 总结 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; winapi网站&#xff1a; h…

ESG跨境电商如何为国内的跨境电商企业打开国外的市场

现在不管是国内还是国外&#xff0c;做电商的企业都非常的多&#xff0c;那么既然有这么多大电商公司&#xff0c;就要有为这些电商公司提供服务的公司&#xff0c;这就是ESG&#xff0c;它是专门为跨境电商服务的公司&#xff0c;那么这家公司的主要业务是什么呢&#xff1f;它…

龙虎榜——20250425

指数依然在震荡&#xff0c;等待方向选择&#xff0c;整体量能不搞但个股红多绿少。 2025年4月25日龙虎榜行业方向分析 一、核心主线方向 绿色电力&#xff08;政策驱动业绩弹性&#xff09; • 代表标的&#xff1a;华银电力&#xff08;绿电运营&#xff09;、西昌电力&…

大数据学习(112)-HIVE中的窗口函数

&#x1f34b;&#x1f34b;大数据学习&#x1f34b;&#x1f34b; &#x1f525;系列专栏&#xff1a; &#x1f451;哲学语录: 用力所能及&#xff0c;改变世界。 &#x1f496;如果觉得博主的文章还不错的话&#xff0c;请点赞&#x1f44d;收藏⭐️留言&#x1f4dd;支持一…

【MySQL】MySQL索引与事务

目录 前言 1. 索引 &#xff08;index&#xff09; 1.1 概念 1.2 作用 1.3 使用场景 1.4 索引的相关操作 查看索引 创建索引 删除索引 2. 索引背后的数据结构 2.1 B树 2.2 B&#xff0b;树的特点 2.3 B&#xff0b;树的优势 3. 事务 3.1 为什么使用事务 3.2 事…

python21-循环小作业

课程&#xff1a;B站大学 记录python学习&#xff0c;直到学会基本的爬虫&#xff0c;使用python搭建接口自动化测试就算学会了&#xff0c;在进阶webui自动化&#xff0c;app自动化 循环语句小作业 for-in作业斐波那契 for 固定数值计算素数字符统计数字序列range 函数 水仙花…

深度学习小记(包括pytorch 还有一些神经网络架构)

这个是用来增加深度学习的知识面或者就是记录一些常用的命令,会不断的更新 import torchvision.transforms as transforms toPIL transforms.ToPILImage()#可以把tensor转换为Image类型的 imgtoPIL(img) #利用save就可以保存下来 img.save("/opt/data/private/stable_si…

Neo4j 可观测性最佳实践

Neo4j 介绍 Neo4j 是一款领先的图数据库管理系统&#xff0c;采用图数据模型来表示和存储数据。它以节点、关系和属性的形式组织数据&#xff0c;节点代表实体&#xff0c;关系表示节点间的连接&#xff0c;属性则为节点和关系附加信息。Neo4j 使用 Cypher 查询语言&#xff0…

算法训练营第三十天 | 动态规划 (三)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 一、01背包问题理论基础&#xff08;一&#xff09;动态规划五部曲确定dp数组以及下标的含义确定递推公式初始化dp数组确定遍历顺序 二、01背包问题理论基础&#…

玩机搞机基本常识-------小米OLED屏幕机型怎么设置为永不休眠_手机不息屏_保持亮屏功能 拒绝“烧屏” ?

前面在帮一位粉丝解决小米OLED机型在设置----锁屏下没有永不休眠的问题。在这里&#xff0c;大家要明白为什么有些小米机型有这个设置有的没有的原因。区分OLED 屏幕和 LCD屏幕的不同。从根本上拒绝烧屏问题。 OLED 屏幕的一些优缺点&#x1f49d;&#x1f49d;&#x1f49d; …

PostgreSQL使用LIKE右模糊没有走索引分析验证

建表&数据初始化可参考PostgreSQL 分区表——范围分区SQL实践 背景&#xff1a; 给t_common_work_order_log的handle_user_name新建索引后&#xff0c;使用LIKE右模糊匹配查询时&#xff0c;发现走的全表扫描 CREATE INDEX order_log_handle_user_name_index ON t_commo…

【vue】【element-plus】 el-date-picker使用cell-class-name进行标记,type=year不生效解决方法

typedete&#xff0c;自定义cell-class-name打标记效果如下&#xff1a; 相关代码&#xff1a; <el-date-pickerv-model"date":clearable"false":editable"false":cell-class-name"cellClassName"type"date"format&quo…

《Learning Langchain》阅读笔记8-RAG(4)在vector store中存储embbdings

什么是 vector store&#xff1f; 与专门用于存储结构化数据&#xff08;如 JSON 文档或符合关系型数据库模式的数据&#xff09;的传统数据库不同&#xff0c;vector stores处理的是非结构化数据&#xff0c;包括文本和图像。像传统数据库一样&#xff0c;vector stores也能执…

用api的方式调用本地下载好的大模型(以llama为例,不是ollama!!!)

目录 1、创建虚拟环境2、激活虚拟环境3、安装相关库4、编写脚本&#xff08;test.py&#xff09;调用脚本5、bash中测试通信完美结果 1、创建虚拟环境 conda create -n myenv python3.12 -y2、激活虚拟环境 conda activate myenv3、安装相关库 pip install vllm fastapi uvi…

算力网络(CFN)在跨校联合科研中的应用:安全性挑战与联邦调度实践

引言&#xff1a;科研协作的算力困境 上海交通大学与麻省理工学院联合开展的高能物理模拟实验&#xff0c;因算力资源分配不均导致部分节点连续72小时处于空转状态。这个典型案例揭示了当前跨机构科研协作的痛点&#xff1a;‌算力资源无法实现安全可信的细粒度共享‌。算力网…

高防IP+CDN组合:电商大促的“双保险”防护方案

引言 电商大促期间&#xff0c;平台流量呈爆发式增长&#xff0c;既要应对瞬时激增的访问量&#xff0c;又要防范黑客趁机发起的DDoS攻击、恶意爬虫等威胁。单一防护手段往往难以兼顾性能与安全&#xff0c;而高防IPCDN组合通过“流量清洗加速分发”的双重机制&#xff0c;为电…

# 构建词汇表:自然语言处理中的关键步骤

构建词汇表&#xff1a;自然语言处理中的关键步骤 在自然语言处理&#xff08;NLP&#xff09;任务中&#xff0c;词汇表&#xff08;Vocabulary&#xff09;是文本数据预处理的核心组件之一。它将文本中的单词或字符映射为数值索引&#xff0c;从而让计算机能够理解和处理语言…