Skip to content

Commit ffc7192

Browse files
Merge pull request #3 from vinodnextcoder/feature/users
mysql tables
2 parents 7640dbc + 448432d commit ffc7192

File tree

4 files changed

+35
-25
lines changed

4 files changed

+35
-25
lines changed

controllers/users/users.go

Lines changed: 20 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,32 +2,31 @@ package controllers
22

33
import (
44
"fmt"
5+
"golang-gin-boilerplate/database"
6+
"golang-gin-boilerplate/models"
7+
responses "golang-gin-boilerplate/services/apiresponse"
58
"net/http"
9+
610
"github.com/gin-gonic/gin"
7-
"golang-gin-boilerplate/models"
8-
"golang-gin-boilerplate/database"
9-
"golang-gin-boilerplate/services/apiresponse"
10-
1111
)
1212

13-
14-
1513
func CreateUser() gin.HandlerFunc {
1614
return func(c *gin.Context) {
17-
var input models.User
18-
if err := c.ShouldBindJSON(&input); err != nil {
19-
c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
20-
return
21-
}
22-
fmt.Println(input)
23-
userCreate := models.User(input)
24-
result := database.Db.Create(&userCreate)
25-
if result.Error != nil {
26-
fmt.Println("something went wrong in db query")
27-
return
28-
}
29-
fmt.Println("record inserted successfully ", result.RowsAffected)
30-
31-
c.JSON(http.StatusOK, responses.SuccesResponse{Status: http.StatusOK, Message: "success", Data: map[string]interface{}{"data": input}})
15+
var input models.User
16+
if err := c.ShouldBindJSON(&input); err != nil {
17+
c.JSON(http.StatusBadRequest, responses.ErrorResponse{Status: http.StatusBadRequest, Message: "Error: Invalid input", Data: ""})
18+
return
19+
}
20+
fmt.Println(input)
21+
userCreate := models.User(input)
22+
result := database.Db.Create(&userCreate)
23+
if result.Error != nil {
24+
fmt.Println("something went wrong in db query")
25+
c.JSON(http.StatusBadRequest, responses.ErrorResponse{Status: http.StatusBadRequest, Message: "Error: Db query failed", Data: ""})
26+
return
27+
}
28+
fmt.Println("record inserted successfully ", result.RowsAffected)
29+
30+
c.JSON(http.StatusOK, responses.SuccesResponse{Status: http.StatusOK, Message: "success", Data: map[string]interface{}{"data": input}})
3231
}
3332
}

file-log02-08-2024.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{"level":"info","msg":"golang app started","time":"2024-02-08T09:53:30+05:30"}
2+
{"level":"info","msg":"golang app started","time":"2024-02-08T10:01:55+05:30"}
3+
{"level":"info","msg":"golang app started","time":"2024-02-08T10:06:58+05:30"}
4+
{"level":"info","msg":"golang app started","time":"2024-02-08T10:07:49+05:30"}
5+
{"level":"info","msg":"golang app started","time":"2024-02-08T10:08:45+05:30"}

models/user.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
package models
22

33
type User struct {
4-
ID uint `json:"id" gorm:"primary_key"`
5-
Name string `json:"name"`
6-
Email string `json:"email"`
4+
Id uint `json:"Id" gorm:"primary_key"`
5+
Name string `json:"name"`
6+
Email string `json:"email"`
77
Password string `json:"password"`
88
}

services/apiresponse/responses.go

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,10 @@ type SuccesResponse struct {
44
Status int `json:"status"`
55
Message string `json:"message"`
66
Data map[string]interface{} `json:"data"`
7-
}
7+
}
8+
9+
type ErrorResponse struct {
10+
Status int `json:"status"`
11+
Message string `json:"message"`
12+
Data string `json:"data"`
13+
}

0 commit comments

Comments
 (0)