Handle dataframe base vars (#878)
This commit is contained in:
parent
1a8e0b8058
commit
15485f0716
@ -704,6 +704,9 @@ class BaseVar(Var, Base):
|
|||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
The default value of the var.
|
The default value of the var.
|
||||||
|
|
||||||
|
Raises:
|
||||||
|
ImportError: If the var is a dataframe and pandas is not installed.
|
||||||
"""
|
"""
|
||||||
type_ = (
|
type_ = (
|
||||||
self.type_.__origin__ if types.is_generic_alias(self.type_) else self.type_
|
self.type_.__origin__ if types.is_generic_alias(self.type_) else self.type_
|
||||||
@ -720,6 +723,15 @@ class BaseVar(Var, Base):
|
|||||||
return {}
|
return {}
|
||||||
if issubclass(type_, tuple):
|
if issubclass(type_, tuple):
|
||||||
return ()
|
return ()
|
||||||
|
if types.is_dataframe(type_):
|
||||||
|
try:
|
||||||
|
import pandas as pd
|
||||||
|
|
||||||
|
return pd.DataFrame()
|
||||||
|
except ImportError as e:
|
||||||
|
raise ImportError(
|
||||||
|
"Please install pandas to use dataframes in your app."
|
||||||
|
) from e
|
||||||
return set() if issubclass(type_, set) else None
|
return set() if issubclass(type_, set) else None
|
||||||
|
|
||||||
def get_setter_name(self, include_state: bool = True) -> str:
|
def get_setter_name(self, include_state: bool = True) -> str:
|
||||||
|
Loading…
Reference in New Issue
Block a user