entc/gen: skip enum identifier checks in case it has custom Go type (#2766)

Fixes https://github.com/ent/ent/issues/2756
This commit is contained in:
Ariel Mashraki
2022-07-17 17:14:43 +03:00
committed by GitHub
parent 9e0d8af284
commit 077670451a
5 changed files with 11 additions and 10 deletions

View File

@@ -316,7 +316,7 @@ const DefaultRole role.Role = "READ"
// RoleValidator is a validator for the "role" field enum values. It is called by the builders before save.
func RoleValidator(r role.Role) error {
switch r {
case "ADMIN", "OWNER", "USER", "READ", "WRITE":
case "ADMIN", "OWNER", "USER", "READ", "WRITE", "READ+WRITE":
return nil
default:
return fmt.Errorf("fieldtype: invalid enum value for role field: %q", r)

View File

@@ -126,7 +126,7 @@ var (
{Name: "schema_float", Type: field.TypeFloat64, Nullable: true},
{Name: "schema_float32", Type: field.TypeFloat32, Nullable: true},
{Name: "null_float", Type: field.TypeFloat64, Nullable: true},
{Name: "role", Type: field.TypeEnum, Enums: []string{"ADMIN", "OWNER", "USER", "READ", "WRITE"}, Default: "READ"},
{Name: "role", Type: field.TypeEnum, Enums: []string{"ADMIN", "OWNER", "USER", "READ", "WRITE", "READ+WRITE"}, Default: "READ"},
{Name: "priority", Type: field.TypeEnum, Nullable: true, Enums: []string{"UNKNOWN", "LOW", "HIGH"}},
{Name: "optional_uuid", Type: field.TypeUUID, Nullable: true},
{Name: "nillable_uuid", Type: field.TypeUUID, Nullable: true},

View File

@@ -11,15 +11,16 @@ import (
type Role string
const (
Admin Role = "ADMIN"
Owner Role = "OWNER"
User Role = "USER"
Read Role = "READ"
Write Role = "WRITE"
Admin Role = "ADMIN"
Owner Role = "OWNER"
User Role = "USER"
Read Role = "READ"
Write Role = "WRITE"
ReadWrite Role = "READ+WRITE"
)
func (Role) Values() (roles []string) {
for _, r := range []Role{Admin, Owner, User, Read, Write} {
for _, r := range []Role{Admin, Owner, User, Read, Write, ReadWrite} {
roles = append(roles, string(r))
}
return

View File

@@ -223,7 +223,7 @@ const DefaultRole role.Role = "READ"
// RoleValidator is a validator for the "role" field enum values. It is called by the builders before save.
func RoleValidator(r role.Role) error {
switch r {
case "ADMIN", "OWNER", "USER", "READ", "WRITE":
case "ADMIN", "OWNER", "USER", "READ", "WRITE", "READ+WRITE":
return nil
default:
return fmt.Errorf("fieldtype: invalid enum value for role field: %q", r)