|
@@ -2,6 +2,7 @@ package orm
|
|
|
|
|
|
import (
|
|
import (
|
|
"fmt"
|
|
"fmt"
|
|
|
|
+ "log"
|
|
"net/http"
|
|
"net/http"
|
|
|
|
|
|
"github.com/jinzhu/gorm"
|
|
"github.com/jinzhu/gorm"
|
|
@@ -87,7 +88,16 @@ func GetGroupForAdd(args map[string]string) (interface{}, error) {
|
|
}
|
|
}
|
|
|
|
|
|
func GetGroup(args map[string]string) (interface{}, error) {
|
|
func GetGroup(args map[string]string) (interface{}, error) {
|
|
- return nil, nil
|
|
|
|
|
|
+ var group Group
|
|
|
|
+
|
|
|
|
+ id := args["id"]
|
|
|
|
+
|
|
|
|
+ if err := DB().Preload("Teachers").Where("id = ?", id).Find(&group).Error; err != nil {
|
|
|
|
+ return nil, err
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return &group, nil
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
|
|
func UpdateGroup(args map[string]string, r *http.Request) (IDer, error) {
|
|
func UpdateGroup(args map[string]string, r *http.Request) (IDer, error) {
|
|
@@ -95,11 +105,17 @@ func UpdateGroup(args map[string]string, r *http.Request) (IDer, error) {
|
|
if err != nil {
|
|
if err != nil {
|
|
return nil, err
|
|
return nil, err
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ log.Println("Before decoding...", group.(*Group).TeacherIDs)
|
|
err = renderer.Decode(group, r)
|
|
err = renderer.Decode(group, r)
|
|
if err != nil {
|
|
if err != nil {
|
|
return nil, err
|
|
return nil, err
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ if err := DB().Where(group.(*Group).TeacherIDs).Find(&group.(*Group).Teachers).Error; err != nil {
|
|
|
|
+ return nil, err
|
|
|
|
+ }
|
|
|
|
+ log.Println("After decoding...", group.(*Group).TeacherIDs)
|
|
_, err = SaveGroup(group)
|
|
_, err = SaveGroup(group)
|
|
if err != nil {
|
|
if err != nil {
|
|
return nil, err
|
|
return nil, err
|