O problema é abordado no tópico de problemas do github - https://github.com /flask-admin/flask-admin/issues/1588
Basicamente, o
flask-admin O pacote pip está desatualizado, em relação ao sqlalchemy mais recente pacote de pipas. Nessa área específica, cls, key = identity_key(instance=obj)
sqlalchemy agora está retornando 3 objetos, mas flask-admin está esperando apenas 2, daí o erro. O real solução para isso é esperar até que um novo
flask-admin versão é carregada para pip, até então, você tem algumas opções. - Manualmente entre e edite esse
fields.pyarquivo - Conforme detalhado nesse tópico de problemas, limite
sqlalchemypara a versão1.2.0b3. Você pode fazer isso em seu arquivo requirements.txt ou manualmente com uma instalação de atualização do pip,pip install --upgrade sqlalchemy==1.2.0b3 - Como a correção está em
flask-adminramificação master do github, instale essa versão doflask-admincom a localização do pip degit+https://github.com/flask-admin/flask-admin. Novamente, você faz isso em seu arquivo requirements.txt ou com uma instalação de atualização do pip,pip install --upgrade git+https://github.com/flask-admin/flask-admin.
Minha preferência pessoal, e o que eu fiz, é a opção 3. Se você examinar o código em si, é uma linha que os mantenedores querem remover, de qualquer maneira, e como eles estão lidando com isso é melhor, e em geral com estes coisas, prefiro seguir em frente (versão mais recente do
flask-admin ) em vez de reter as coisas (rollback sqlalchemy para uma versão anterior), e certamente melhor do que editar manualmente o código bruto.