万年素人からHackerへの道

万年素人がHackerになれるまで殴り書きするぜ。

  • ・資産運用おすすめ
    10万円は1000円くらい利益
    資産運用ブログ アセマネ
    • ・寄付お願いします
      YENTEN:YYzNPzdsZWqr5THWAdMrKDj7GT8ietDc2W
      BitZenny:ZfpUbVya8MWQkjjGJMjA7P9pPkqaLnwPWH
      c0ban:8KG95GXdEquNpPW8xJAJf7nn5kbimQ5wj1
      Skycoin:KMqcn7x8REwwzMHPi9fV9fbNwdofYAWKRo

    golang template テンプレートの優先順

    テンプレートの優先順。

    ginのテンプレートの機能で以下のようにテンプレートを読む設定する。

    router := gin.Default()
    router.LoadHTMLGlob("templates/*/*.tmpl")

    こうすればtemplates/なんとか の[なんとか]が自由になる。

    templates/shop/index.tmpl templates/aho/index.tmpl

    の2つ同じファイル名、ただし親フォルダが違う。

    呼ぶ側はこんな感じ。c*gin.Contextだ。

            c.HTML(http.StatusOK, "index.tmpl", gin.H{
                    "title": "shop",
                    "body": shopsResponse,
            })

    これでやると、templates/shop/index.tmplの方が呼ばれた。 おそらくアルファベット順でshopとahoだとaよりもsの方が後だが、 s開始のshopが呼ばれたのは、後からロードされたのが上書きしたから?

    試しに、sよりもtの方が後なのでtemplates/tra/index.tmplとテキトーに作った。 そうすると、templates/shop/index.tmplではなく、templates/tra/index.tmplが優先されてた。

    しかし、明示的に同じファイルがある時の指定方法はどうやるのかしら?