File tree Expand file tree Collapse file tree 6 files changed +9
-10
lines changed Expand file tree Collapse file tree 6 files changed +9
-10
lines changed Original file line number Diff line number Diff line change @@ -116,7 +116,7 @@ struct ComputedField {
116116 serializer : CombinedSerializer ,
117117 alias : String ,
118118 alias_py : Py < PyString > ,
119- serialize_by_alias : bool ,
119+ serialize_by_alias : Option < bool > ,
120120}
121121
122122impl ComputedField {
@@ -134,14 +134,13 @@ impl ComputedField {
134134 let alias_py = schema
135135 . get_as ( intern ! ( py, "alias" ) ) ?
136136 . unwrap_or_else ( || property_name. clone ( ) ) ;
137- let serialize_by_alias = config. get_as ( intern ! ( py, "serialize_by_alias" ) ) ?. unwrap_or ( false ) ;
138137 Ok ( Self {
139138 property_name : property_name. extract ( ) ?,
140139 property_name_py : property_name. into ( ) ,
141140 serializer,
142141 alias : alias_py. extract ( ) ?,
143142 alias_py : alias_py. into ( ) ,
144- serialize_by_alias,
143+ serialize_by_alias : config . get_as ( intern ! ( py , "serialize_by_alias" ) ) ? ,
145144 } )
146145 }
147146
Original file line number Diff line number Diff line change @@ -205,8 +205,8 @@ impl<'a> Extra<'a> {
205205 self . model . and_then ( |model| model. get_type ( ) . name ( ) . ok ( ) )
206206 }
207207
208- pub fn serialize_by_alias_or ( & self , serialize_by_alias : bool ) -> bool {
209- self . by_alias . unwrap_or ( serialize_by_alias)
208+ pub fn serialize_by_alias_or ( & self , serialize_by_alias : Option < bool > ) -> bool {
209+ self . by_alias . unwrap_or ( serialize_by_alias. unwrap_or ( false ) )
210210 }
211211}
212212
Original file line number Diff line number Diff line change @@ -29,7 +29,7 @@ pub(super) struct SerField {
2929 // None serializer means exclude
3030 pub serializer : Option < CombinedSerializer > ,
3131 pub required : bool ,
32- pub serialize_by_alias : bool ,
32+ pub serialize_by_alias : Option < bool > ,
3333}
3434
3535impl_py_gc_traverse ! ( SerField { serializer } ) ;
@@ -41,7 +41,7 @@ impl SerField {
4141 alias : Option < String > ,
4242 serializer : Option < CombinedSerializer > ,
4343 required : bool ,
44- serialize_by_alias : bool ,
44+ serialize_by_alias : Option < bool > ,
4545 ) -> Self {
4646 let alias_py = alias. as_ref ( ) . map ( |alias| PyString :: new ( py, alias. as_str ( ) ) . into ( ) ) ;
4747 Self {
Original file line number Diff line number Diff line change @@ -37,7 +37,7 @@ impl BuildSerializer for DataclassArgsBuilder {
3737 _ => FieldsMode :: SimpleDict ,
3838 } ;
3939
40- let serialize_by_alias = config. get_as ( intern ! ( py, "serialize_by_alias" ) ) ?. unwrap_or ( false ) ;
40+ let serialize_by_alias = config. get_as ( intern ! ( py, "serialize_by_alias" ) ) ?;
4141
4242 for ( index, item) in fields_list. iter ( ) . enumerate ( ) {
4343 let field_info = item. downcast :: < PyDict > ( ) ?;
Original file line number Diff line number Diff line change @@ -47,7 +47,7 @@ impl BuildSerializer for ModelFieldsBuilder {
4747 ( _, _) => None ,
4848 } ;
4949
50- let serialize_by_alias = config. get_as ( intern ! ( py, "serialize_by_alias" ) ) ?. unwrap_or ( false ) ;
50+ let serialize_by_alias = config. get_as ( intern ! ( py, "serialize_by_alias" ) ) ?;
5151
5252 for ( key, value) in fields_dict {
5353 let key_py = key. downcast_into :: < PyString > ( ) ?;
Original file line number Diff line number Diff line change @@ -32,7 +32,7 @@ impl BuildSerializer for TypedDictBuilder {
3232 _ => FieldsMode :: SimpleDict ,
3333 } ;
3434
35- let serialize_by_alias = config. get_as ( intern ! ( py, "serialize_by_alias" ) ) ?. unwrap_or ( false ) ;
35+ let serialize_by_alias = config. get_as ( intern ! ( py, "serialize_by_alias" ) ) ?;
3636
3737 let fields_dict: Bound < ' _ , PyDict > = schema. get_as_req ( intern ! ( py, "fields" ) ) ?;
3838 let mut fields: AHashMap < String , SerField > = AHashMap :: with_capacity ( fields_dict. len ( ) ) ;
You can’t perform that action at this time.
0 commit comments