golang(7):研究一个golang 写的cms系统qor,功能特别全。
本文的原文连接是: 博主地址是:http://blog.csdn.net/freewebsys 1,关于qorqor是一个golang写的CMS系统lib库。 2,安装qor其实主要是 依赖比较多。其实admin qor 是lib库形式的。 go get -v github.com/qor/qor
go get -v github.com/qor/admin
go get -v github.com/qor/qor-example
-v 是可以下载相关依赖的。 经跟漫长的等待就下载好了。。。 启动之前需要配置下mysql数据库,配置文件在: config/database.example.yaml db:
adapter: mysql
name: qor_example
user: root
password: mariadb
然后再启动: go run main.go
启动之后如果发现界面卡住了。ctrl+c 下,好像不知道哪里配置没有对。 qor 是按照模块进行开发,相关的模块一大堆呢。 3,界面启动之后访问 http://localhost:7000/admin 4,第一个demoqor 真的是个很强大的lib库。参考文档: package main
import (
"fmt"
"net/http"
// "github.com/qor/qor"
"github.com/qor/admin"
"github.com/jinzhu/gorm"
//_ "github.com/jinzhu/gorm/dialects/sqlite"
_ "github.com/jinzhu/gorm/dialects/mysql"
)
// Define a GORM-backend model
type User struct {
gorm.Model
Name string
}
// Define another GORM-backend model
type Product struct {
gorm.Model
Name string
Description string
}
func main() {
// Set up the database
mysql_url := fmt.Sprintf("%v:%v@tcp(%v:%v)/%v?parseTime=True&loc=Local","root","mariadb","127.0.0.1","3306","qor_demo")
DB,_ := gorm.Open("mysql",mysql_url)
// DB,_ := gorm.Open("sqlite3","demo.db") //for sqlite3
DB.AutoMigrate(&User{},&Product{})
// Initalize
Admin := admin.New(&admin.AdminConfig{DB: DB})
// Create resources from GORM-backend model
Admin.AddResource(&User{})
Admin.AddResource(&Product{})
// Initalize an HTTP request multiplexer
mux := http.NewServeMux()
// Mount admin to the mux
Admin.MountTo("/admin",mux)
fmt.Println("Listening on: 9000")
http.ListenAndServe(":9000",mux)
}
非常的简单方便,定义了两个实体类型,就有了两个实体类型的CURD。 4,总结qor思路还是不错的,通过插件的方式更方便的开发CMS系统。感觉上能做的不仅仅是一个CMS啦,啥系统都可以做呢。商城,网站,博客,手机端 rest api 管理。 第一步,已经研究明白了,qor是一个基础lib库,能帮你实现CRUD。 本文的原文连接是: 博主地址是:http://blog.csdn.net/freewebsys (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |