31 lines
		
	
	
		
			728 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			728 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| package main
 | |
| 
 | |
| import (
 | |
| 	"database/sql"
 | |
| 	_ "github.com/mattn/go-sqlite3"
 | |
| 	"gopkg.in/gorp.v1"
 | |
| 	"log"
 | |
| )
 | |
| 
 | |
| var DB *gorp.DbMap = initDB()
 | |
| 
 | |
| func initDB() *gorp.DbMap {
 | |
| 	db, err := sql.Open("sqlite3", "file:lunch.sqlite?cache=shared&mode=rwc")
 | |
| 	if err != nil {
 | |
| 		log.Fatal(err)
 | |
| 	}
 | |
| 
 | |
| 	dbmap := &gorp.DbMap{Db: db, Dialect: gorp.SqliteDialect{}}
 | |
| 	dbmap.AddTableWithName(User{}, "users").SetKeys(true, "UserId")
 | |
| 	dbmap.AddTableWithName(Session{}, "sessions").SetKeys(true, "SessionId")
 | |
| 	dbmap.AddTableWithName(Attendee{}, "attendees").SetKeys(true, "AttendeeId")
 | |
| 	dbmap.AddTableWithName(Suggestion{}, "suggestions").SetKeys(true, "SuggestionId")
 | |
| 
 | |
| 	err = dbmap.CreateTablesIfNotExists()
 | |
| 	if err != nil {
 | |
| 		log.Fatal(err)
 | |
| 	}
 | |
| 
 | |
| 	return dbmap
 | |
| }
 |