我是高朗的初学者. 我正在try 从HTML输入类型Date中获取输入
<input type="date" id="birthDate" name="BirthDate" required placeholder="YYYY-MM-DD">
并发布此Create方法
func (c *customerController) CreateCustomer(ctx *gin.Context) {
var customer Customer
if err := ctx.ShouldBindJSON(&customer); err != nil {
ctx.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
return
}
if err := c.service.CreateCustomer(customer); err != nil {
ctx.JSON(http.StatusInternalServerError, gin.H{"error": "Failed to create customer"})
return
}
ctx.Status(http.StatusOK)
}
客户对象:
type Customer struct {
ID uint `gorm:"primarykey"`
FirstName string `gorm:"type:varchar(100);not null"`
LastName string `gorm:"type:varchar(100);not null"`
BirthDate time.Time `gorm:"not null"`
Gender string `gorm:"type:varchar(6);not null"`
Email string `gorm:"type:varchar(100);not null;unique"`
Address string `gorm:"type:varchar(200)"`
}
当我try 添加新客户时,我收到http错误400,因为HTML日期类型与Golang Time对象不匹配.
错误正文为{"error":"parsing time \"2014-05-05\" as \"2006-01-02T15:04:05Z07:00\": cannot parse \"\" as \"T\""}
我怎么才能解决这个问题呢?
提前谢谢你