浏览代码

Working on template funcs

Andrea Fazzi 5 年之前
父节点
当前提交
e9c454ec1a
共有 6 个文件被更改,包括 20 次插入6 次删除
  1. 1 1
      Makefile
  2. 2 0
      compose/karmen/docker-compose_outside_docker.yml
  3. 12 1
      renderer/funcmap.go
  4. 1 1
      templates/layout/button.html.tpl
  5. 3 3
      templates/teachers.html.tpl
  6. 1 0
      watch.sh

+ 1 - 1
Makefile

@@ -16,6 +16,6 @@ run_with_docker:
 
 run_outside_docker:
 	docker-compose -f compose/karmen/docker-compose_outside_docker.yml up -d db
-	go run main.go --config=config/config_outside_docker.yaml
+	go run main.go --config=config/config_outside_docker.yaml &
 
 all: run_with_docker

+ 2 - 0
compose/karmen/docker-compose_outside_docker.yml

@@ -21,6 +21,8 @@ services:
       - ./sql:/docker-entrypoint-initdb.d
     env_file:
       - db.env
+    ports:
+      - 3307:3306
 
   ldap_server:
     restart: always

+ 12 - 1
renderer/funcmap.go

@@ -3,6 +3,7 @@ package renderer
 import (
 	"fmt"
 	"html/template"
+	"log"
 	"net/url"
 	"reflect"
 	"time"
@@ -16,6 +17,15 @@ var (
 	}
 )
 
+func getType(myvar interface{}) (res string) {
+	t := reflect.TypeOf(myvar)
+	for t.Kind() == reflect.Ptr {
+		t = t.Elem()
+		res += "*"
+	}
+	return res + t.Name()
+}
+
 func query(values ...string) template.URL {
 	var urlValues url.Values
 
@@ -33,5 +43,6 @@ func convertDate(t time.Time) string {
 }
 
 func model(value interface{}) string {
-	return reflect.ValueOf(model).String()
+	log.Println(value)
+	return getType(value)
 }

+ 1 - 1
templates/layout/button.html.tpl

@@ -1,6 +1,6 @@
 {{define "button"}}
 <a href="/teachers/create/?{{query "tpl_layout" "base" "tpl_content" "teachers_add_update"}}" class="btn btn-primary">
   <span class="fa fa-plus-circle" aria-hidden="true"></span>
-  Crea nuovo {{. | model}}
+  Crea nuovo {{.}}
 </a>
 {{end}}

+ 3 - 3
templates/teachers.html.tpl

@@ -8,10 +8,10 @@
 	<h1>Docenti ({{len .Data}})</h1>
       </div>
       <div class="col-md-4">
-	
 	<div class="btn-group float-right">
-	  {{template "button"}}
-      </div>
+	  {{template "button" "docente"}}
+        </div>
+        
     </div>
   </div>
 

+ 1 - 0
watch.sh

@@ -5,5 +5,6 @@ echo "Executing Makefile... $1"
 make -k $1
 
 while inotifywait -r -e modify ./; do
+    killall -9 main
     make -k $1
 done