Za każdym razem, gdy uruchamiam aplikację korzystającą z Flask-SQLAlchemy, pojawia się następujące ostrzeżenie, że opcja SQLALCHEMY_TRACK_MODIFICATIONS
zostanie wyłączona.Skąd mam wiedzieć, czy mogę wyłączyć SQLALCHEMY_TRACK_MODIFICATIONS?
/home/david/.virtualenvs/flask-sqlalchemy/lib/python3.5/site-packages/flask_sqlalchemy/__init__.py:800: UserWarning: SQLALCHEMY_TRACK_MODIFICATIONS adds significant overhead and will be disabled by default in the future. Set it to True to suppress this warning.
warnings.warn('SQLALCHEMY_TRACK_MODIFICATIONS adds significant overhead and will be disabled by default in the future. Set it to True to suppress this warning.')
Próbowałem dowiedzieć się, co robi ta opcja, ale dokumentacja Kolba-SQLAlchemy nie jest jasne, co wykorzystuje tę śledzenie.
SQLALCHEMY_TRACK_MODIFICATIONS
Jeśli ustawiony jest prawdą (domyślnie) skrzynkowego SQLAlchemy śledzi modyfikacji obiektów i emitują sygnał. Wymaga to dodatkowej pamięci i może być wyłączone, jeśli nie jest potrzebne.
Jak mogę się dowiedzieć, czy mój projekt wymaga SQLALCHEMY_TRACK_MODIFICATIONS = True
, czy mogę bezpiecznie wyłączyć tę funkcję i zaoszczędzić pamięć na moim serwerze?
OK, jesteśmy już blisko, ale ważny krok w kierunku prawdziwej odpowiedzi wciąż brakuje: Jaka funkcja/metoda połączenia wskazują, że system zdarzeń jest używany? – Robert
Zaktualizowałem odpowiedź, aby wyświetlić listę zdarzeń, które prawdopodobnie zostaną wciągnięte przez kod ... Jeśli pomkniesz po nich i nic nie wyjdzie, prawdopodobnie jesteś bezpieczny. –
Dla rekordu rzeczywistą zmienną, która ma być ustawiona na wartość Prawda lub Fałsz, w celu uniknięcia tego wydruku jest 'app.config ['SQLALCHEMY_TRACK_MODIFICATIONS']', gdzie aplikacja to twoja aplikacja do kolb utworzona za pomocą 'flask.Flask()' –