Yesod 子站点中的占位符
Place holders in Yesod subsite
假设我有一个子站点 Profile
可以显示用户的个人资料(包括他的网站、他的狗的名字和所有这些),还有另一个管理友谊的子站点 Social
用户之间。
我希望在 Michael 的个人资料页面上,我可以单击 "become friend with Michael"(因为他构建了很棒的框架;))。关于封装,这段代码我既不能放在Profile
里,也不能放在Social
里。所以我想到了 word press 以及我们必须在主题中放置占位符的能力,我们可以在其中放置我们想要的任何小部件。
这使我得出以下结论:
instance YesodProfile App where
<random stuff>
placeholder userId = [ becomeFriendWidget userId, likeThisGuyWidget userId]
然后 Profile
子站点必须在配置文件页面的某处显示给定的小部件。
它看起来是一个好的解决方案吗?是否存在此类问题的另一种 "standard" 解决方案?
对我来说这似乎是一个很好的解决方案。它与 yesod-auth 执行其插件功能的方式并没有太大的不同,因此存在一定程度的现有技术。
假设我有一个子站点 Profile
可以显示用户的个人资料(包括他的网站、他的狗的名字和所有这些),还有另一个管理友谊的子站点 Social
用户之间。
我希望在 Michael 的个人资料页面上,我可以单击 "become friend with Michael"(因为他构建了很棒的框架;))。关于封装,这段代码我既不能放在Profile
里,也不能放在Social
里。所以我想到了 word press 以及我们必须在主题中放置占位符的能力,我们可以在其中放置我们想要的任何小部件。
这使我得出以下结论:
instance YesodProfile App where
<random stuff>
placeholder userId = [ becomeFriendWidget userId, likeThisGuyWidget userId]
然后 Profile
子站点必须在配置文件页面的某处显示给定的小部件。
它看起来是一个好的解决方案吗?是否存在此类问题的另一种 "standard" 解决方案?
对我来说这似乎是一个很好的解决方案。它与 yesod-auth 执行其插件功能的方式并没有太大的不同,因此存在一定程度的现有技术。