GitHub user dosubot[bot] added a comment to the discussion: when i use my custom superset_config.py,there is an error like this,how to fix it ?
<!-- Answer --> You can automate session cleanup in Superset so users don't have to clear their browser cache after a user is deleted. In your superset_config.py, use the FLASK_APP_MUTATOR hook to add a before_request handler that checks if the current user still exists and logs them out if not. This will clear the session server-side whenever a deleted user tries to make a request, preventing the "NoneType object has no attribute 'is_active'" error. Here's an example: ```python from flask import g from flask_login import logout_user, current_user from superset.extensions import db from superset.models.core import User def logout_if_user_deleted(): if current_user.is_authenticated: # Check if user still exists in the DB user = db.session.query(User).get(current_user.get_id()) if user is None or not user.is_active: logout_user() def FLASK_APP_MUTATOR(app): app.before_request(logout_if_user_deleted) ``` Add this to your superset_config.py. Now, if a deleted user tries to use their session, Superset will log them out automatically and redirect them to the login page, no manual cache clearing needed. This is the recommended pattern for handling deleted user sessions in Superset [[docs](https://github.com/apache/superset/blob/829e4d92d91ceae4b43b1ed3b063ffe45377799c/docs/docs/configuration/configuring-superset.mdx)]. <!-- Dosu Comment Footer --> *To reply, just mention [@dosu](https://go.dosu.dev/dosubot).* --- <sup>How did I do? [Good](https://app.dosu.dev/response-feedback/80858db1-17f4-4989-bfa9-3412efca3332?feedback_type=great_response) | [Irrelevant](https://app.dosu.dev/response-feedback/80858db1-17f4-4989-bfa9-3412efca3332?feedback_type=irrelevant_answer) | [Incorrect](https://app.dosu.dev/response-feedback/80858db1-17f4-4989-bfa9-3412efca3332?feedback_type=incorrect_sources) | [Verbose](https://app.dosu.dev/response-feedback/80858db1-17f4-4989-bfa9-3412efca3332?feedback_type=too_verbose) | [Hallucination](https://app.dosu.dev/response-feedback/80858db1-17f4-4989-bfa9-3412efca3332?feedback_type=hallucination) | [Report 🐛](https://app.dosu.dev/response-feedback/80858db1-17f4-4989-bfa9-3412efca3332?feedback_type=bug_report) | [Other](https://app.dosu.dev/response-feedback/80858db1-17f4-4989-bfa9-3412efca3332?feedback_type=other)</sup> [](https://app.dosu.dev/a28d3c7e-a9d3-459e-9fb6-3a6f9ff4f357/ask?utm_source=github)& nbsp;[](https://go.dosu.dev/discord-bot) [](https://twitter.com/intent/tweet?text=%40dosu_ai%20helped%20me%20solve%20this%20issue!&url=https%3A//github.com/apache/superset/discussions/32808) GitHub link: https://github.com/apache/superset/discussions/32808#discussioncomment-13971782 ---- This is an automatically sent email for notifications@superset.apache.org. To unsubscribe, please send an email to: notifications-unsubscr...@superset.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: notifications-unsubscr...@superset.apache.org For additional commands, e-mail: notifications-h...@superset.apache.org