sql >> Database >  >> RDS >> Mysql

SQL-alchemie:ValueError te veel waarden om uit te pakken?

Het probleem wordt behandeld in de github issues thread - https://github.com /flask-admin/flask-admin/issues/1588

Kortom, de flask-admin pip-pakket is verouderd, met betrekking tot de nieuwste sqlalchemy pip pakket. In dat specifieke gebied,

cls, key = identity_key(instance=obj)

sqlalchemy retourneert nu 3 objecten, maar flask-admin verwacht er maar 2, vandaar de fout.

De echte oplossing hiervoor is te wachten tot een nieuwe flask-admin versie is geüpload naar pip, tot die tijd heb je een paar opties.

  1. Handmatig ga naar binnen en bewerk die fields.py bestand
  2. Zoals beschreven in die problementhread, beperk sqlalchemy naar versie 1.2.0b3 . U kunt dit doen in uw requirements.txt-bestand, of handmatig met een pip upgrade install, pip install --upgrade sqlalchemy==1.2.0b3
  3. Omdat de oplossing zich in flask-admin bevindt 's master branch in hun github-repository, installeer die versie van flask-admin met de pip-locatie van git+https://github.com/flask-admin/flask-admin . Nogmaals, je doet dit in je requirements.txt-bestand, of met een pip upgrade install, pip install --upgrade git+https://github.com/flask-admin/flask-admin .

Mijn persoonlijke voorkeur, en wat ik heb gedaan, is optie 3. Als je door de code zelf kijkt, is het een regel die de beheerders willen verwijderen, hoe dan ook, en hoe ze ermee omgaan is beter, en in het algemeen met deze dingen, ik ga liever vooruit (laatste versie van flask-admin ) in plaats van dingen tegen te houden (rollback sqlalchemy naar een eerdere versie), en zeker beter dan het handmatig bewerken van de onbewerkte code.



  1. Verbinding maken met AWS MySQL / MariaDB RDS of EC2-database vanuit MySQL WorkBench

  2. Tabelrijen / -records bewerken in SQL Server Management Studio (SSMS) - SQL Server-zelfstudie / TSQL-zelfstudie, deel 18

  3. UNION ALL-optimalisatie

  4. Hoe gebruik je een array met waarden uit PHP in de 'IN'-clausule van de mysql-query?