diff --git a/cmd/start.go b/cmd/start.go index 18e44098..c56ed729 100644 --- a/cmd/start.go +++ b/cmd/start.go @@ -119,9 +119,16 @@ var startCmd = &cobra.Command{ // Start Studio Server go func() { + + err = studio.Load(config.Conf) + if err != nil { + fmt.Println(color.RedString(L("Studio Load: %s"), err.Error())) + os.Exit(2) + } + err := studio.Start(config.Conf) if err != nil { - fmt.Println(color.RedString(L("Studio: %s"), err.Error())) + fmt.Println(color.RedString(L("Studio Start: %s"), err.Error())) os.Exit(2) } }() diff --git a/engine/load.go b/engine/load.go index 18e17e06..b6a2fabe 100644 --- a/engine/load.go +++ b/engine/load.go @@ -278,7 +278,7 @@ func loadApp(root string) error { func printErr(mode, widget string, err error) { message := fmt.Sprintf("[%s] %s", widget, err.Error()) - if !strings.Contains(message, "does not exists") && mode == "development" { + if !strings.Contains(message, "does not exists") && !strings.Contains(message, "no such file or directory") && mode == "development" { color.Red(message) } } diff --git a/studio/router.go b/studio/router.go index 88524ef6..1eab4765 100644 --- a/studio/router.go +++ b/studio/router.go @@ -212,7 +212,9 @@ func setRouter(router *gin.Engine) { ctx, err := script.NewContext(fmt.Sprintf("%v", sid), nil) if err != nil { throw(c, 500, err.Error()) + return } + res, err := ctx.Call(fun.Method, fun.Args...) if err != nil { diff --git a/widgets/table/table.go b/widgets/table/table.go index d751a13f..f95683e7 100644 --- a/widgets/table/table.go +++ b/widgets/table/table.go @@ -188,7 +188,12 @@ func (dsl *DSL) parse(id string, root string) error { } if dsl.Fields == nil { - dsl.Fields = &FieldsDSL{} + dsl.Fields = &FieldsDSL{ + Table: field.Columns{}, + Filter: field.Filters{}, + filterMap: map[string]field.FilterDSL{}, + tableMap: map[string]field.ColumnDSL{}, + } } // Bind model / store / table / ...