I'm using html/template already. I'm able to parse my templates dynamically but my approach doesn't seems to be the best to handle dozens of different templates that can be used inside N different combinations, especially because I want to cache them and not to have to parse those combination every time I render that view. For example, I have this code:
func extractFileNames () (templateFileNamesFull []string) { files, _ := ioutil.ReadDir("./views") for _, f := range files { if strings.Contains(f.Name(), ".html") { templateFileNamesFull = append(templateFileNamesFull, "views/" + f.Name()) } } return templateFileNamesFull } var Templates = template.Must(template.ParseFiles(extractFileNames()...)) This works great WITHOUT layouts/components, because using components make me have N of these combinations, instead of just one "Templates" variable with all posed templates: t1.ParseFiles("boilerplate.html", "page1.html") ... tN.ParseFiles("boilerplate.html", "pageN.html") AFAIK with GO I can't create dynamic variables like "template1",..., "templateN" thus making this road not the best one for what I want. So, as a newcomer to this language and with some homework done, my question is if there are some best practices for using these small components or is it something that makes the use of a Web Framework necessary? On Monday, August 8, 2016 at 7:09:48 PM UTC+1, parais...@gmail.com wrote: > > Use the html/template package . It's a good idea to go through the > documentation of the standard lib once and to see what packages it > provides. In fact, with Go the knowledge of the std lib is as important > knowing any other features of the language. > > Le dimanche 7 août 2016 23:51:05 UTC+2, Paulo Janeiro a écrit : >> >> Coming from another language, I'm starting to port a web app to Go using >> default packages to test-drive it but I couldn't find any >> standard/recommended way of using pre-defined HTML components that I could >> use in HTML pages and inside other components. >> >> Specifically, is there a recommended pattern on how to use a component >> inside another component inside another component passing data to each one >> in a transparent way? >> As far as I understand Go differentiates itself from other languages >> because you don't need to use a Web framework and rather use default >> API/middleware. But when it comes to reusable templates/components (and >> also layouts) I don't see an immediate parallel. >> >> Could someone point me in the correct direction? >> Thanks. >> > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.