【发布时间】:2020-03-29 03:23:45
【问题描述】:
我的 errors.go 文件
package errors
import (
"net/http"
)
type RestError struct {
Message string `json:"message"`
Status int `json:"status"`
Error string `json:"error"`
}
func (err *RestError) NewBadRequestError(message string) {
err.Message = message
err.Status = http.StatusBadRequest
err.Error = "bad_request"
}
我的 user.go 文件
package users
import (
errors "Utils/Errors"
)
type (
User struct {
ID uint `json:"id"`
Name string `json:"name"`
LastName string `json:"last_name"`
Email string `json:"email"`
}
)
func (u *User) Validate() (err *errors.RestError) {
if u.Name == "" {
return &err.NewBadRequestError("The name field can't be empty")
}
return nil
}
我总是得到以下编译器错误
err.NewBadRequestError(*message) (no value) used as valuecompiler
想知道我做错了什么。 我也试过 return &err.NewBadRequestError(message: "The name field can't be empty") 但仍然出现以下语法错误: 参数列表语法中缺少 ','
【问题讨论】:
-
这不会引起您的直接问题,但
import ( errors "Utils/Errors" )无效。 Go does not support relative imports. -
您好像有错字?你的意思是 &erros.NewBadRequestError("The name field can't be empty") ? --- err => 错误@Gaetan Sobze
标签: go