Скажем, у меня есть дочерний сайт Profile
, который может отображать профиль пользователя (с его сайтом, именем его собаки и всеми этими вопросами) и другим подразделением Social
, которые управляют дружбой между пользователями.Держатели мест на доселе Yesod
Мне хотелось бы, чтобы на странице профиля Майкла я могу нажать «стать другом с Майклом» (потому что он строит замечательную структуру;)). Что касается инкапсуляции, я не могу ни поставить эту часть кода в Profile
, ни в Social
. Поэтому я подумал о прессе и способности, которую мы должны поместить в заполнители тем, где мы можем поместить любой виджет, который мы хотим.
Это привело меня к следующему:
instance YesodProfile App where
<random stuff>
placeholder userId = [ becomeFriendWidget userId, likeThisGuyWidget userId]
Тогда Profile
подсайт должен показывать где-то на странице профиля заданных виджетов.
Считаете ли вы, что это хорошее решение? Существует ли другое «стандартное» решение такого рода проблем?