0

yesod アプリケーションで、 graphvizによってレンダリングされるグラフの URL 属性を作成し、補間を使用したいと考えています。理想的には、

graphToDot nonClusteredParams { fmtNode = \ (n,l) -> 
     [ URL [whamlet| @{MyRoute ...} |]
   } g

もちろん、型は一致しません。

  • の属性URLは pureTextですが、whamletモナディックです (ウィジェット)
  • で置き換えるとshamlet、タイプは問題ありませんが、補間できません。URL interpolation used, but no URL renderer provided

これを解決する簡単な方法はありますか?

4

1 に答える 1

1

これは機能します: render 関数を (モナドで) 取得し、(純粋なコードで) 適用します。

render <- getUrlRender 
let d = graphToDot ... 
     [ URL $ render $ MyRoute ... ]

同様の問題が解決されているここでこれを見つけました: https://github.com/yesodweb/yesod/wiki/Using-type-safe-urls-from-inside-javascript

于 2015-03-23T03:06:20.077 に答える