1

versionsメタデータにエントリがある Hakyll の投稿の HTML を生成しようとしています。たとえば、投稿versions: Python 3.4, pytest 1.5.2には、投稿の下部に適切にフォーマットされるものがある場合があります。

これを実現するには、メタデータをロードしてListField. 次のスタブのようなもの:

versionsCtx :: Context String
versionsCtx = listFieldWith "versions" ctx (\item -> do
    versions <- getMetadataField (itemIdentifier item) "versions"

    return $ case versions of
      Just lst -> map (mkVersinoItem . trim) $ splitAll "," lst
      Nothing  -> [])
          where ctx = field "version" (return . itemBody)
                mkVersionItem version = Item {
                    itemIdentifier = fromString ("version/" ++ version),
                    itemBody = version
                }

私のpost.htmlテンプレートには、次のものがあります。

...
    <section>
        $body$

        $if(versions)$
        <hr />
        <ul>
            $for(versions)$
                <li>$version$</li>
            $endfor$
        </ul>
        $else$
            <p>Fail...</p>
        $endif$
    </section>
...

それでも、私は多くの異なる定義を試し、versionsCtx同様の試みをオンラインで見つけました. どれも機能していないようで、投稿は常に「失敗...」でレンダリングされます。私は何を間違っていますか?

編集:提案と説明で質問を更新しました。

4

1 に答える 1