FastHX 安装与配置指南

FastHX 安装与配置指南

fasthx FastAPI and HTMX, the right way. fasthx 项目地址: https://gitcode.com/gh_mirrors/fa/fasthx

1. 项目基础介绍

FastHX 是一个为 FastAPI 设计的服务器端渲染工具,它支持内置的 HTMX 支持。FastHX 允许开发者通过声明式的装饰器语法,将 FastAPI 路由的处理结果与服务器端渲染相结合。

本项目主要使用的编程语言是 Python。

2. 关键技术和框架

  • FastAPI: 一个现代、快速(高性能)的 Web 框架,用于构建 API,具有 Python 3.6 以上的类型提示功能。
  • HTMX: 一个在浏览器中工作的 JavaScript 库,允许您使用 HTML 的 <a><form> 元素以声明方式发起 AJAX 请求。
  • Jinja2: 一个强大的模板引擎,用于服务器端渲染 HTML。
  • Pydantic: 数据验证和设置管理工具,用于创建 Python 类型提示的模型。

3. 安装和配置准备工作

在开始安装 FastHX 之前,请确保您的系统中已安装以下环境和依赖:

  • Python 3.6 或更高版本
  • pip(Python 包管理器)

详细安装步骤

步骤 1: 安装 FastAPI 和 Uvicorn

首先,确保安装 FastAPI 和 Uvicorn,它们是运行 FastHX 所需的基础包。

pip install fastapi uvicorn
步骤 2: 安装 FastHX

接下来,使用 pip 安装 FastHX 包。

pip install fasthx

如果您打算使用 HTMX 或 Jinja2 模板引擎,您可以安装对应的集成包:

pip install fasthx[htmy]  # 对于 HTMX 支持
pip install fasthx[jinja]  # 对于 Jinja2 支持
步骤 3: 创建 FastAPI 应用

创建一个新的 Python 文件,例如 main.py,并设置基本的 FastAPI 应用。

from fastapi import FastAPI

app = FastAPI()
步骤 4: 配置路由和渲染

根据您选择的模板引擎,配置路由和渲染逻辑。以下是一个使用 Jinja2 模板引擎的基本示例。

首先,确保已经安装了 fasthx[jinja]

然后,更新 main.py 文件:

from fastapi import FastAPI
from fasthx import Jinja
from fastapi.templating import Jinja2Templates

app = FastAPI()
templates = Jinja(Jinja2Templates("templates"))

@app.get("/")
async def read_root():
    return templates.page("index.html", context={"message": "Hello, World!"})

确保在项目根目录下创建一个名为 templates 的文件夹,并在其中创建一个 index.html 文件,用于展示渲染的内容。

步骤 5: 运行应用

最后,运行您的 FastAPI 应用:

uvicorn main:app --reload

打开浏览器并访问 http://127.0.0.1:8000/,您应该会看到渲染的页面内容。

以上步骤为您提供了 FastHX 的基础安装和配置指南,您可以根据具体的项目需求进一步开发和扩展。

fasthx FastAPI and HTMX, the right way. fasthx 项目地址: https://gitcode.com/gh_mirrors/fa/fasthx