Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package main
- import (
- "encoding/json"
- "github.com/zebresel-com/mongodm"
- "gopkg.in/mgo.v2/bson"
- "html/template"
- "io/ioutil"
- "log"
- "net/http"
- )
- type User struct {
- mongodm.DocumentBase `json:",inline" bson:",inline"`
- Username string `json:"username" bson:"username"`
- PasswordHash string `json:"passwordHash" bson:"passwordHash"`
- }
- var UserModel *mongodm.Model
- func index(w http.ResponseWriter, r *http.Request) {
- t, _ := template.ParseFiles("index.html")
- t.Execute(w, nil)
- }
- func auth(w http.ResponseWriter, r *http.Request) {
- user := &User{}
- UserModel.FindOne(bson.M{"username": "admin", "passwordHash": "something"}).Exec(user)
- log.Printf("%+v\n", user)
- }
- func main() {
- file, err := ioutil.ReadFile("locals.json")
- if err != nil {
- log.Panicf("File error: %v\n", err)
- }
- var localMap map[string]map[string]string
- json.Unmarshal(file, &localMap)
- dbConfig := &mongodm.Config{
- DatabaseHost: "127.0.0.1",
- DatabaseName: "tester",
- Locals: localMap["en-US"],
- }
- connection, err := mongodm.Connect(dbConfig)
- if err != nil {
- log.Panic("Database connection error: %v", err)
- }
- connection.Register(&User{}, "users")
- UserModel = connection.Model("User")
- http.HandleFunc("/", index)
- http.HandleFunc("/auth", auth)
- log.Fatal(http.ListenAndServe(":3000", nil))
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement