From 4ee6eac3133de6e8c7b03efe8877649a5f2aa5c6 Mon Sep 17 00:00:00 2001 From: Billy Chan Date: Tue, 8 Mar 2022 17:50:01 +0800 Subject: [PATCH] CLI generate enum with numeric like variants --- sea-orm-codegen/src/entity/active_enum.rs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/sea-orm-codegen/src/entity/active_enum.rs b/sea-orm-codegen/src/entity/active_enum.rs index 800da59e..f5567b75 100644 --- a/sea-orm-codegen/src/entity/active_enum.rs +++ b/sea-orm-codegen/src/entity/active_enum.rs @@ -14,10 +14,13 @@ impl ActiveEnum { let enum_name = &self.enum_name; let enum_iden = format_ident!("{}", enum_name.to_camel_case()); let values = &self.values; - let variants = self - .values - .iter() - .map(|v| format_ident!("{}", v.to_camel_case())); + let variants = self.values.iter().map(|v| v.trim()).map(|v| { + if v.chars().all(|c| c.is_numeric()) { + format_ident!("_{}", v) + } else { + format_ident!("{}", v.to_camel_case()) + } + }); let extra_derive = with_serde.extra_derive();