Tango+xorm+pongo2 example 例子 國產GO語言框架

#Tango xorm pongo2使用方法: Tango更靈活 xorm好用 jinja用習慣了,go固然要用pongo2html

##安裝GO ##安裝GO包:go get "github.com/flosch/pongo2" "github.com/go-xorm/xorm" "github.com/lib/pq" "github.com/lunny/tango" "github.com/tango-contrib/tpongo2" ##直接上代碼:git

package main

import (
	"fmt"
	"github.com/flosch/pongo2"
	"github.com/go-xorm/xorm"
	_ "github.com/lib/pq"
	"github.com/lunny/tango"
	"github.com/tango-contrib/tpongo2"
)

var engine *xorm.Engine
var HOMENAME string //首頁名字

type Home struct {
	tpongo2.Renderer
}

//用戶數據表定義
type Users struct {
	// orm.Object
	Id     int64 `xorm:"id pk not null autoincr"`
	Ustate int64 `xorm:"ustate"`
	Name   string
}

var err error

//鏈接數據庫
func init() {
        xorm數據庫鏈接//
	engine, err = xorm.NewEngine("postgres", "user=postgres dbname=db host=127.0.0.1 password=111 sslmode=disable")
	engine.Ping()
	err := engine.Sync2(new(Users))
	//插入數據
	// user := new(Users)
	// user.Name = "yuyu"
	// affected, err := engine.Insert(user)
	// fmt.Println(affected)
	if err != nil {
		fmt.Printf("錯誤: %s", err.Error())
		// log.Fatal(err)
	}
}

func (this *Home) Get() error {
	HOMENAME := "||||||||||yes today|||||"
	user := new(Users)
	users1 := make([]Users, 0)
	err2 := engine.Where("Id >= ?", 1).Find(&users1)
	engine.Id(2).Get(user)
	if err2 != nil {
		fmt.Println(err2)
	}
	return this.Render("ss.html", pongo2.Context{
		"title":   HOMENAME,
		"name":    users1,
		"nameone": user,
	})
}

func main() {

	o := tango.Classic()
	o.Use(tpongo2.New())
	o.Get("/", new(Home))
	o.Run(8080)
}
相關文章
相關標籤/搜索