路由、视图与 URL 生成
Flask Web 开发#Python全栈#第十阶段#Flask Web 开发#路由、视图与 URL 生成约 694 字 · 2 分钟阅读
追问显示点击任意追问卡片可收起 / 展开
路由规则、endpoint 与视图函数是什么关系?
追问 一个函数能否关联多个 URL?为什么路由路径相同与 endpoint 重名是不同问题?
怎样为路由声明允许的 HTTP 方法?
追问 GET 路由通常怎样处理 HEAD 和 OPTIONS?这些自动行为为什么不等于已经配置好 CORS?
动态路径参数和转换器如何使用?
追问
<int:item_id>、普通字符串与 path 转换器各匹配什么?不匹配类型和记录不存在如何区分?查询参数为什么通常不写进 route 的路径规则?
追问
/items?page=2 的匹配与参数读取各在哪一步进行?改变查询参数是否需要重新注册路由?路径末尾的斜杠可能怎样影响访问结果?
追问 声明
/items/ 与 /items 后,另一种写法在默认配置下可能出现重定向或 404,怎样实测确认?url_for 为什么比拼接路径更适合生成站内链接?
追问 动态参数、额外查询参数与蓝图 endpoint 如何传入?路由调整后哪些调用可以保持不变?
生成外部绝对 URL 时,需要哪些上下文与可信配置?
追问 请求内和请求外使用
url_for 有什么不同?主机、协议和代理配置怎样影响结果?如何实现列表、详情、新增与编辑的基本路由?
追问 页面路由与 JSON API 应怎样划分 URL、方法和响应,避免一个视图承担过多分支?
为视图添加登录检查等装饰器时,应注意什么?
追问 注册路由的顺序与
functools.wraps 各解决什么问题?为什么多个包装函数可能引起 endpoint 冲突?函数视图与类视图各适合怎样的接口组织?
追问 MethodView 如何按方法分派?怎样避免为了使用类而增加不必要的继承层次?
核对资料: Flask 快速入门。