此问题通常是由于未设置正确的过滤器值所致。可以通过以下代码示例解决此问题:
from superset.filters import get_filter_by_datasource_type
from superset.models.slice import Slice
from superset import db
slice_id =
slice = db.session.query(Slice).filter_by(id=slice_id).one()
filters = slice.params.get('filters', [])
datasource_type = slice.datasource.type
for flt in filters:
if flt.get('col') == '':
filter_obj = get_filter_by_datasource_type(datasource_type)(
flt.get('col'),
flt.get('op'),
flt.get('val')
)
filter_value = filter_obj.get_value()
# Now use filter_value in your query as needed
请注意,上面的代码示例假定您具有有效的Slice ID,以及要过滤的列的名称。通过将这些信息替换为实际值,您将能够从Superset中正确获取过滤器值,从而解决“{{ filter_values() }}不起作用”的问题。