Как избежать обратной кавычки внутри тега структуры Go - PullRequest
4 голосов
/ 08 мая 2020

Я хочу избежать обратной кавычки внутри тега структуры Go. Например, в приведенном ниже коде:

type User struct {
   email string `validate: "regexp=`"`
   password string `validate: "min=8"`

}

1 Ответ

6 голосов
/ 08 мая 2020

Вы можете использовать обычные котировки. Вам просто нужно экранировать больше символов, особенно кавычки вокруг значения тега структуры.

type User struct {
   Email string "validate:\"regexp=`\""
   Password string `validate:"min=8"`
}

И проверить значение тега с помощью отражения:

func main() {
  s := reflect.ValueOf(&User{}).Elem()
  fmt.Println(s.Type().Field(0))
}

Вывод:

{Email  string validate:"regexp=`" 0 [0] false}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...