我的任务是了解有关 Yesod 的所有信息,但我(有点)卡在路由系统上,它与子站点和跨路由链接有关。我想首先说明的是在ResourceR
整个路由定义和 Hamlet 链接中发现的“”模式。
我注意到“类型”本身 ( ResourceR
) 从未在 Yesod 的 TH DSL 之外解决或引用。这是否意味着它仅真正用作虚拟类型,仅用于在引用 Yesod 链接时利用 Haskell 的类型安全性?我还注意到,函数getResourceR
等postResourceR
对于应用程序的工作至关重要,但它们的定义在样板应用程序代码中的使用位置并不明确。Yesod 是否只是减少对@{ResourceR}
适当函数的调用?
我一直觉得我应该将ResourceR
自己定义为一种数据类型,而实际上它是由 Yesod 在内部生成和减少的。
所以我的问题是:在 Hamlet 和 Route 代码中引用的“资源类型”是否会被 Yesod 的 DSL 自动生成和减少?
先感谢您!