Haskell Yesod子网站中的席位持有者

Haskell Yesod子网站中的席位持有者,haskell,yesod,Haskell,Yesod,假设我有一个子网站档案,可以显示一个用户的档案,他的网站,他的狗的名字和所有这些事情,还有一个子网站社交管理用户之间的友谊 我希望在Michael的个人资料页面上,我可以点击“与Michael成为朋友”,因为他构建了一个很棒的框架。关于封装,我既不能将这段代码放在概要文件中,也不能放在社交网站中。所以我想到了wordpress和在主题中放置占位符的能力,我们可以在其中放置任何我们想要的小部件 这使我得出以下结论: instance YesodProfile App where

假设我有一个子网站档案,可以显示一个用户的档案,他的网站,他的狗的名字和所有这些事情,还有一个子网站社交管理用户之间的友谊

我希望在Michael的个人资料页面上,我可以点击“与Michael成为朋友”,因为他构建了一个很棒的框架。关于封装,我既不能将这段代码放在概要文件中,也不能放在社交网站中。所以我想到了wordpress和在主题中放置占位符的能力,我们可以在其中放置任何我们想要的小部件

这使我得出以下结论:

instance  YesodProfile App where
        <random stuff>
        placeholder userId = [ becomeFriendWidget userId, likeThisGuyWidget userId]
然后概要文件子网站必须在概要文件页面的某个地方显示给定的小部件


这看起来是一个好的解决方案吗?是否存在此类问题的另一个标准解决方案?

在我看来是一个不错的解决方案。它与YesDopAuth的插件功能没有太大的不同,因此有一定的现有技术水平