Yesod中的分层路由

时间:2015-04-01 08:49:53

标签: routing yesod

我试图在Yesod(版本1.4.5.1)中使用分层路由,但显然我做错了什么。我config/routes文件的相关部分(我使用标准的脚手架网站)看起来像这样:

/ HomeR GET
/about AboutR:
    / AboutIndexR GET
    /team AboutTeamR GET
/service ServiceR:
    / ServiceIndexR GET
    /newsletter ServiceNewsletterR GET

我收到以下编译错误:

Foundation.hs:34:21
    Exception when trying to run compile-time code:
      Overlapping routes:
("HomeR", "AboutIndexR")
("HomeR", "ServiceIndexR")
("AboutIndexR", "ServiceIndexR")

显然,Yesod并不了解所有三个/都是不同的路径!?我的错误在哪里?

1 个答案:

答案 0 :(得分:1)

我的网站就像这样工作,似乎工作正常。我还复制了你的路线片段,似乎通过重叠检查就好了。您确定config/routes中的缩进是否存在某种问题?如果您确定不是问题,也许您可​​以将文件本身上传到某处以供审核。