FastHtml llmctx介绍

这份文档似乎是一份 FastHTML 库的用户指南,它将 Starlette、Uvicorn、HTMX 和 fastcore 的 FT "快速标签" 结合起来,用于创建服务器渲染的超媒体应用程序。以下是文档的主要部分和内容概述:
快速入门

  • 安装 FastHTML
  • 创建一个最小应用程序
  • 使用 serve() 运行应用程序
  • 使用 Titled 包裹标题
  • 使用 Script 包裹 JavaScript 代码
  • 使用 DEBUG 模式进行调试

路由

  • 使用 rt() 装饰器定义路由
  • 使用变量部分在 URL 中添加变量
  • 使用 HTTP 方法处理不同类型的请求

CSS 和静态文件

  • 使用 Pico CSS 和 Sakura CSS 微框架
  • 使用 Style 包裹内联样式
  • 更改默认静态文件位置
  • 使用 FileResponse 服务器静态文件

渲染 Markdown 和代码高亮

  • 使用 MarkdownJSHighlightJS 渲染 Markdown 和代码
    定义新的 ft 组件
  • 使用函数定义组件
  • 使用 *args**kwargs 定义可嵌套的组件
  • 使用数据类定义更复杂的组件

测试视图

  • 使用 Starlette 测试客户端测试视图

表单

  • 使用数据类验证表单数据
  • 使用 Form 组件创建表单
  • 使用 fill_form 填充表单
  • 将表单与视图结合使用

字符串和转换顺序

  • 使用 __ft__ 方法渲染组件
  • 使用 str()NotStr() 转换字符串

自定义异常处理程序

  • 使用 exception_handlers 字典自定义异常处理程序

Cookies 和会话

  • 使用 cookie() 函数设置 cookie
  • 使用 session 参数存储会话数据

Toasts (消息)

  • 使用 setup_toasts()add_toast() 添加消息
  • 消息类型:info, success, warning, error

身份验证和授权

  • 使用 Beforeware 处理身份验证和授权
  • 使用 skip 参数允许访问特定路由

服务器发送事件 (SSE)

  • 使用 EventStreamsse_message 创建 SSE
  • 使用 HTMX SSE 扩展

WebSockets

  • 使用 app.ws 装饰器添加 WebSocket 支持
  • 使用 on_connecton_disconnect 处理连接和断开连接事件

文件上传

  • 使用 UploadFile 处理文件上传
  • 支持单个和多个文件上传

HTMX 参考

  • HTMX 核心属性、附加属性、CSS 类、请求/响应头、事件、扩展、JavaScript API 和配置选项

Surreal 和 CSS Scope Inline

  • Surreal 是一个小的 jQuery 替代品,提供了 meany 函数,用于实现内联行为局部性。
  • CSS Scope Inline 允许在 <style> 标签中使用 me 选择器,通过 MutationObserver 监听 DOM。

Starlette 快速指南

  • Starlette 是 FastHTML 的底层 ASGI 框架,提供了一些有用的功能,例如获取上传文件内容、返回自定义响应、请求上下文、变量存储、异常处理、后台任务和中间件。

API 列表

  • 提供了 FastHTML 库中所有函数和方法的详细文档。

示例应用程序

  • 一个使用 FastHTML 创建的 Todo 列表应用程序的示例,展示了如何使用 FastHTML 和 HTMX 的最佳实践。
    请注意,这只是一个概述,文档中还有更多细节和示例
相关推荐
qq_37290693几秒前
Layui表格怎么实现在表头的右侧添加一个自定义配置图标
jvm·数据库·python
qq_342295826 分钟前
SQL如何利用聚合函数生成业务分析指标_KPI计算基础教程
jvm·数据库·python
m0_515098429 分钟前
SQL查询如何处理分组后的NULL值_使用COALESCE配合聚合函数
jvm·数据库·python
斯班奇的好朋友阿法法10 分钟前
本地ollama大模型速度慢的优化
python·语言模型
江山与紫云21 分钟前
1.3 使用 Jupyter Notebook
python
Metaphor69229 分钟前
使用 Python 合并 PDF 文件
java·python·pdf
亚林瓜子31 分钟前
AWS Glue PySpark中日志设置
python·spark·日志·aws·pyspark·log·glue
qq_4240985636 分钟前
HTML5中解决数据库版本号管理混乱的规范化建议
jvm·数据库·python
Sherry Wangs40 分钟前
flash-attn安装指南
pytorch·python·flash-attn
Irene199141 分钟前
Python下载第三方库:requests、oracledb,连接 Oracle 数据库,测试数据输出(切记不要操作或删除系统表)
数据库·python·oracledb