Dodawanie do couchdb dziala
This commit is contained in:
parent
951d6e65b9
commit
39901856be
BIN
backend/connector_couchdb.exe
Normal file
BIN
backend/connector_couchdb.exe
Normal file
Binary file not shown.
@ -3,6 +3,7 @@ package main
|
||||
import (
|
||||
"fmt"
|
||||
"net/url"
|
||||
"reflect"
|
||||
|
||||
"github.com/zemirco/couchdb"
|
||||
)
|
||||
@ -10,93 +11,147 @@ import (
|
||||
// create your own document
|
||||
type cardDocument struct {
|
||||
couchdb.Document
|
||||
ID int `json:"id" binding:"required"`
|
||||
isQuestion bool `json:"typ"` //True karta pytanie, False karta odpowiedź
|
||||
Blank int `json:"puste" binding:"required"` //ile kart odpowiedzi na pytanie
|
||||
Text string `json:"tekst" binding:"required"` // podłoga to luka
|
||||
IsQuestion bool `json:"isquestion"`
|
||||
Blank int `json:"blank"`
|
||||
Text string `json:"text`
|
||||
}
|
||||
|
||||
func connectCouchdb(url_couchdb string) {
|
||||
if url_couchdb == "" {
|
||||
url_couchdb = "http://127.0.0.1:5984/"
|
||||
}
|
||||
type dummyDocument struct {
|
||||
couchdb.Document
|
||||
Foo string `json:"foo"`
|
||||
Beep string `json:"beep"`
|
||||
}
|
||||
|
||||
func connectCouchdb() couchdb.DatabaseService {
|
||||
/*
|
||||
http://127.0.0.1:5984/_utils/#database/golang_cards/_all_docs
|
||||
*/
|
||||
// if url_couchdb == "" {
|
||||
url_couchdb := "http://root:password@127.0.0.1:5984/"
|
||||
// }
|
||||
|
||||
u, err := url.Parse(url_couchdb)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
return u, err
|
||||
}
|
||||
|
||||
func addNewCard(){
|
||||
u, err = connectCouchdb("")
|
||||
client, err := couchdb.NewClient(u)
|
||||
|
||||
db := client.Use("golangCards")
|
||||
doc := &cardDocument{
|
||||
Foo: "bar",
|
||||
Beep: "bopp",
|
||||
ID int
|
||||
isQuestion bool //True karta pytanie, False karta odpowiedź
|
||||
Blank int //ile kart odpowiedzi na pytanie
|
||||
Text string // podłoga to luka
|
||||
}
|
||||
result, err := db.Post(doc)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
// return client, err
|
||||
fmt.Println(reflect.TypeOf(client))
|
||||
db := client.Use("golang_cards")
|
||||
// return db
|
||||
fmt.Println(reflect.TypeOf(db))
|
||||
return db
|
||||
|
||||
}
|
||||
// start
|
||||
func main() {
|
||||
|
||||
u, err = connectCouchdb("")
|
||||
// create a new client
|
||||
client, err := couchdb.NewClient(u)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
func addNewCard(_isQuestion bool, _blank int, _text string) {
|
||||
if !_isQuestion {
|
||||
fmt.Printf("NIE")
|
||||
_blank = 0
|
||||
}
|
||||
|
||||
// get some information about your CouchDB
|
||||
info, err := client.Info()
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
fmt.Println(info)
|
||||
db := connectCouchdb()
|
||||
|
||||
// // create a database
|
||||
// if _, err = client.Create("dummy"); err != nil {
|
||||
// panic(err)
|
||||
doc := &cardDocument{ //struktura karty
|
||||
IsQuestion: _isQuestion,
|
||||
Blank: _blank,
|
||||
Text: _text,
|
||||
}
|
||||
|
||||
// doc := &dummyDocument{
|
||||
// Foo: "bar",
|
||||
// Beep: "bopp",
|
||||
// }
|
||||
|
||||
// use your new "dummy" database and create a document
|
||||
db := client.Use("dummy")
|
||||
doc := &cardDocument{
|
||||
Foo: "bar",
|
||||
Beep: "bopp",
|
||||
ID int
|
||||
isQuestion bool //True karta pytanie, False karta odpowiedź
|
||||
Blank int //ile kart odpowiedzi na pytanie
|
||||
Text string // podłoga to luka
|
||||
}
|
||||
result, err := db.Post(doc)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
// get id and current revision.
|
||||
if err := db.Get(doc, result.ID); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
// delete document
|
||||
if _, err = db.Delete(doc); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
// and finally delete the database
|
||||
if _, err = client.Delete("dummy"); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
// fmt.Printf(result)
|
||||
fmt.Println(reflect.TypeOf(result))
|
||||
|
||||
}
|
||||
|
||||
func main() {
|
||||
// db := connectCouchdb()
|
||||
addNewCard(true, 1, "_text")
|
||||
}
|
||||
|
||||
// func addNewCard(){
|
||||
// u, err = connectCouchdb("")
|
||||
// client, err := couchdb.NewClient(u)
|
||||
|
||||
// db := client.Use("golang_cards")
|
||||
// doc := &cardDocument{
|
||||
// Foo: "bar",
|
||||
// Beep: "bopp",
|
||||
// ID int
|
||||
// isQuestion bool //True karta pytanie, False karta odpowiedź
|
||||
// Blank int //ile kart odpowiedzi na pytanie
|
||||
// Text string // podłoga to luka
|
||||
// }
|
||||
// result, err := db.Post(doc)
|
||||
// if err != nil {
|
||||
// panic(err)
|
||||
// }
|
||||
|
||||
// }
|
||||
// // start
|
||||
// func main() {
|
||||
|
||||
// u, err = connectCouchdb("")
|
||||
// // create a new client
|
||||
// client, err := couchdb.NewClient(u)
|
||||
// if err != nil {
|
||||
// panic(err)
|
||||
// }
|
||||
|
||||
// // get some information about your CouchDB
|
||||
// info, err := client.Info()
|
||||
// if err != nil {
|
||||
// panic(err)
|
||||
// }
|
||||
// fmt.Println(info)
|
||||
|
||||
// // // create a database
|
||||
// // if _, err = client.Create("dummy"); err != nil {
|
||||
// // panic(err)
|
||||
// // }
|
||||
|
||||
// // use your new "dummy" database and create a document
|
||||
// db := client.Use("dummy")
|
||||
// doc := &cardDocument{
|
||||
// Foo: "bar",
|
||||
// Beep: "bopp",
|
||||
// ID int
|
||||
// isQuestion bool //True karta pytanie, False karta odpowiedź
|
||||
// Blank int //ile kart odpowiedzi na pytanie
|
||||
// Text string // podłoga to luka
|
||||
// }
|
||||
// result, err := db.Post(doc)
|
||||
// if err != nil {
|
||||
// panic(err)
|
||||
// }
|
||||
|
||||
// // get id and current revision.
|
||||
// if err := db.Get(doc, result.ID); err != nil {
|
||||
// panic(err)
|
||||
// }
|
||||
|
||||
// // delete document
|
||||
// if _, err = db.Delete(doc); err != nil {
|
||||
// panic(err)
|
||||
// }
|
||||
|
||||
// // and finally delete the database
|
||||
// if _, err = client.Delete("dummy"); err != nil {
|
||||
// panic(err)
|
||||
// }
|
||||
|
||||
// }
|
||||
|
Binary file not shown.
@ -79,6 +79,59 @@ func getAllUsers() []User {
|
||||
|
||||
}
|
||||
|
||||
func checkLoginExists(_login string) bool {
|
||||
//sprawdza czy dany login jest juz w bazie, przy rejestracji przydatne
|
||||
db, err := connectMysql()
|
||||
|
||||
querySelect := fmt.Sprintf(`SELECT login FROM users WHERE login='%s' ;`, _login)
|
||||
|
||||
result, err := db.Query(querySelect)
|
||||
if err != nil {
|
||||
panic(err.Error())
|
||||
}
|
||||
|
||||
for result.Next() {
|
||||
var userLogin string
|
||||
|
||||
err = result.Scan(&userLogin)
|
||||
if err != nil {
|
||||
panic(err.Error())
|
||||
}
|
||||
|
||||
if userLogin != "" {
|
||||
return true
|
||||
}
|
||||
}
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
func loginUser(_login string, _password string) bool {
|
||||
//do logowanie w bazie
|
||||
db, err := connectMysql()
|
||||
querySelect := fmt.Sprintf(`SELECT login FROM users WHERE login='%s' AND password='%s' ;`, _login, _password)
|
||||
|
||||
result, err := db.Query(querySelect)
|
||||
if err != nil {
|
||||
panic(err.Error())
|
||||
}
|
||||
|
||||
for result.Next() {
|
||||
var userLogin string
|
||||
|
||||
err = result.Scan(&userLogin)
|
||||
if err != nil {
|
||||
panic(err.Error())
|
||||
}
|
||||
|
||||
if userLogin != "" {
|
||||
return true
|
||||
}
|
||||
}
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
func main() {
|
||||
fmt.Println("Go Mysql Tutorial")
|
||||
// db, err := connectMysql()
|
||||
@ -87,8 +140,12 @@ func main() {
|
||||
// fmt.Println(reflect.TypeOf(db))
|
||||
// fmt.Println(reflect.TypeOf(err))
|
||||
|
||||
addUser("login10", "password", "userDescription", 123)
|
||||
allUsers := getAllUsers()
|
||||
fmt.Println(allUsers)
|
||||
// addUser("login10", "password", "userDescription", 123)
|
||||
// allUsers := getAllUsers()
|
||||
// fmt.Println(allUsers)
|
||||
wynik := checkLoginExists("_login")
|
||||
fmt.Printf("%v", wynik)
|
||||
wynik = loginUser("_login", "_password3")
|
||||
fmt.Printf("%v", wynik)
|
||||
|
||||
}
|
||||
|
@ -23,9 +23,10 @@ type User struct {
|
||||
// Structura karty
|
||||
/*
|
||||
*/
|
||||
type Card struct {
|
||||
ID int `json:"id" binding:"required"`
|
||||
isQuestion int `json:"typ"` //0 karta pytanie, 1 karta odpowiedź
|
||||
Blank int `json:"puste" binding:"required"` //ile kart odpowiedzi na pytanie
|
||||
Text string `json:"tekst" binding:"required"` // podłoga to luka
|
||||
}
|
||||
// type Card struct {
|
||||
// couchdb.Document
|
||||
// id int `json:"id" binding:"required"`
|
||||
// isQuestion bool `json:"typ"` //0 karta pytanie, 1 karta odpowiedź
|
||||
// blank int `json:"puste" binding:"required"` //ile kart odpowiedzi na pytanie
|
||||
// text string `json:"tekst" binding:"required"` // podłoga to luka
|
||||
// }
|
||||
|
Loading…
Reference in New Issue
Block a user