12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- package commands
- import (
- "fmt"
- "os"
- "time"
- "github.com/astaxie/beego/orm"
- "github.com/lifei6671/godoc/conf"
- "github.com/lifei6671/godoc/models"
- "io/ioutil"
- )
- //系统安装.
- func Install() {
- if len(os.Args) >= 2 && os.Args[1] == "install" {
- fmt.Println("Initializing...")
- err := orm.RunSyncdb("default", false, true)
- if err == nil {
- initialization()
- } else {
- panic(err.Error())
- os.Exit(1)
- }
- fmt.Println("Install Successfully!")
- os.Exit(0)
- }
- }
- func Version() {
- if len(os.Args) >= 2 && os.Args[1] == "version" {
- fmt.Println(conf.VERSION)
- os.Exit(0)
- }
- }
- //初始化数据
- func initialization() {
- o := orm.NewOrm()
- b,err := ioutil.ReadFile("./database/data.sql")
- if err != nil {
- panic(err.Error())
- os.Exit(1)
- }
- sql := string(b)
- _,err = o.Raw(sql).Exec()
- if err != nil {
- panic("Error => " + err.Error())
- os.Exit(1)
- }
- member, err := models.NewMember().FindByFieldFirst("account", "admin")
- if err == orm.ErrNoRows {
- member.Account = "admin"
- member.Avatar = "/static/images/headimgurl.jpg"
- member.Password = "123456"
- member.AuthMethod = "local"
- member.Role = 0
- member.Email = "[email protected]"
- if err := member.Add(); err != nil {
- panic("Member.Add => " + err.Error())
- os.Exit(0)
- }
- book := models.NewBook()
- book.MemberId = member.MemberId
- book.BookName = "MinDoc演示项目"
- book.Status = 0
- book.Description = "这是一个MinDoc演示项目,该项目是由系统初始化时自动创建。"
- book.CommentCount = 0
- book.PrivatelyOwned = 0
- book.CommentStatus = "closed"
- book.Identify = "mindoc"
- book.DocCount = 0
- book.CommentCount = 0
- book.Version = time.Now().Unix()
- book.Cover = conf.GetDefaultCover()
- book.Editor = "markdown"
- book.Theme = "default"
- if err := book.Insert(); err != nil {
- panic("Book.Insert => " + err.Error())
- os.Exit(0)
- }
- }
- }
|