Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

SQL-alchemy:ValueError muitos valores para descompactar?


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.
  1. Manualmente entre e edite esse fields.py arquivo
  2. Conforme detalhado nesse tópico de problemas, limite sqlalchemy para a versão 1.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
  3. Como a correção está em flask-admin ramificação master do github, instale essa versão do flask-admin com a localização do pip de git+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.