Problemet er dækket i github-problemtråden - https://github.com /flask-admin/flask-admin/issues/1588
Grundlæggende er flask-admin pip-pakken er forældet med hensyn til den seneste sqlalchemy pip pakke. I det specifikke område,
cls, key = identity_key(instance=obj)
sqlalchemy returnerer nu 3 objekter, men flask-admin forventer kun 2, deraf fejlen.
Det rigtige løsningen til dette er at vente til en ny flask-admin version er uploadet til pip, indtil da har du et par muligheder.
- Manuelt gå ind og rediger det
fields.pyfil - Som beskrevet i emnetråden, skal du begrænse
sqlalchemytil version1.2.0b3. Du kan gøre dette i din requirements.txt-fil eller manuelt med en pip-opgraderingsinstallation,pip install --upgrade sqlalchemy==1.2.0b3 - Da rettelsen er i
flask-admin's hovedgren i deres github-lager, skal du installere den version afflask-adminmed pip-placeringengit+https://github.com/flask-admin/flask-admin. Igen gør du dette i din requirements.txt-fil, eller med en pip-opgraderingsinstallation,pip install --upgrade git+https://github.com/flask-admin/flask-admin.
Min personlige præference, og hvad jeg har gjort, er mulighed 3. Hvis du ser selve koden igennem, er det alligevel en linje, som vedligeholderne ønsker at fjerne, og hvordan de håndterer det er bedre, og generelt med disse ting, foretrækker jeg at gå fremad (seneste version af flask-admin ) i stedet for at holde tingene tilbage (tilbageføring sqlalchemy til en tidligere version), og bestemt bedre end manuelt at redigere råkoden.