Problém je popsán ve vláknu problémů s githubem - https://github.com /flask-admin/flask-admin/issues/1588
V podstatě flask-admin balíček pip je zastaralý, pokud jde o nejnovější sqlalchemy pip balíček. V této konkrétní oblasti
cls, key = identity_key(instance=obj)
sqlalchemy nyní vrací 3 objekty, ale flask-admin očekává pouze 2, proto došlo k chybě.
skutečný řešením je počkat na nový flask-admin verze je nahrána do pipu, do té doby máte několik možností.
- Ručně jděte dovnitř a upravte
fields.pysoubor - Jak je podrobně popsáno v tomto vláknu problémů, limit
sqlalchemyna verzi1.2.0b3. Můžete to udělat v souboru requirements.txt nebo ručně pomocí instalace upgradu pip,pip install --upgrade sqlalchemy==1.2.0b3 - Oprava je v
flask-adminhlavní větev uživatele v jejich úložišti github, nainstalujte tuto verziflask-admins umístěním pipugit+https://github.com/flask-admin/flask-admin. Opět to provedete ve svém souboru requirements.txt nebo s instalací upgradu pip,pip install --upgrade git+https://github.com/flask-admin/flask-admin.
Moje osobní preference a to, co jsem udělal, je možnost 3. Pokud se podíváte na samotný kód, je to řádek, který správci chtějí každopádně odstranit, a jak se s tím vypořádávají, je lepší, a obecně s těmito věci, raději pokračuji (nejnovější verze flask-admin ) spíše než zadržování věcí (rollback sqlalchemy na předchozí verzi) a rozhodně lepší než ruční úprava surového kódu.