only treat dict object vars as key value mapping (#4177)

This commit is contained in:
Khaleel Al-Adhami 2024-10-15 12:21:03 -07:00 committed by GitHub
parent 5b802c2c9e
commit 2018be8e08
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -10,6 +10,7 @@ from reflex.event import EventChain, EventHandler
from reflex.utils import format from reflex.utils import format
from reflex.utils.exceptions import ReflexError from reflex.utils.exceptions import ReflexError
from reflex.utils.imports import ImportVar from reflex.utils.imports import ImportVar
from reflex.utils.types import get_origin
from reflex.vars import VarData from reflex.vars import VarData
from reflex.vars.base import CallableVar, LiteralVar, Var from reflex.vars.base import CallableVar, LiteralVar, Var
from reflex.vars.function import FunctionVar from reflex.vars.function import FunctionVar
@ -196,6 +197,10 @@ def convert(
isinstance(value, Breakpoints) isinstance(value, Breakpoints)
and all(not isinstance(v, dict) for v in value.values()) and all(not isinstance(v, dict) for v in value.values())
) )
or (
isinstance(value, ObjectVar)
and not issubclass(get_origin(value._var_type) or value._var_type, dict)
)
else (key,) else (key,)
) )