解決策が見つからないプロジェクトで問題が発生しています。タイトル、説明、価格、およびこの数がいくつか含まれています私の店には製品の種類があります。変数をテンプレートに画像を渡す
type product struct {
Title string
Description string
Price int
Pieces int
}
各製品の画像のURLは、製品によってグループ化された文字列としてjsonに由来します。私は、変数製品の内容を渡すブロック(ヘッダー、フッター、サイドバー、すべての製品に適用する製品カードのテンプレート)を含むメインページを持っています。
<div class="container col-lg-12 main">
{{render "blocks/storefront-header.html"}}
<div class="col-lg-12 padd_class" style="padding-left:10px;padding-right:10px;padding-bottom:10px">
<div class="col-lg-12" style="padding-right:70px;padding-left:70px">
<div class="row">
{{range .myproducts}}
{{template "blocks/product-card.html" .}}
{{end}}
</div>
</div>
</div>
はプロダクトカードには、タイトル、価格、製品の説明と画像が置かれるべきいくつかのdivが含まれています。私がする必要がどのような
<div class="col-lg-12" style="padding-bottom:5px">
<!-- images -->
</div>
<div class="card-block" style="width:100%">
<div class="pull-right" style="margin-right:-15px">
<h3 class="pull-right price">{{.Price}}</h3>
</div>
<h4 class="card-title">{{.Title}}</h4>
<p class="card-text">{{.Description}}</p>
<button class="btn btn-primary col-lg-12 classBuy classbtn ">View product</button></a>
</div>
は、対応する画像と、製品の詳細を渡すである(各製品は、少なくとも1枚の画像を持っている必要があるため、しかし、売り手がアップロードできる画像の具体的な数が存在しない)のためのテンプレートには、カードは、私のページに、各製品の詳細と画像の両方を、同じカード内に一緒に表示するようにします。基本的に、カードには、この特定の商品の商品詳細と画像が含まれている必要があります。 これは私が使用して、外出先コードです:
iris.UseTemplate(html.New(html.Config{Layout: "pages/_layout.html"})).Directory("./views", ".html")
iris.Static("/img", "./img", 1)
iris.Static("/css", "./css", 1)
iris.Static("/js", "./js", 1)
type ProductList []product
var myproducts = ProductList{
{"bracelet", "descr", 10, 7},
{"hat", "descr", 3, 5},
{"scarf", "descr", 3, 0},
}
iris.Get("/dashboard", func(ctx *iris.Context) {
ctx.Render("pages/dashboard.html", iris.Map{"myproducts": myproducts}, iris.RenderOptions{"gzip": true})
})
iris.Listen(":8080")
私が実行しようとしました何が同じテンプレート、カードの一つに二つの変数、製品の一つとイメージの1つを渡すことだったが、それはうまくいきませんでした。 これを達成する方法について誰かが考えていますか? ありがとうございました!