Masalahnya dibahas di utas masalah github - https://github.com /flask-admin/flask-admin/issues/1588
Pada dasarnya, flask-admin
paket pip kedaluwarsa, sehubungan dengan sqlalchemy
terbaru paket pip. Di area spesifik itu,
cls, key = identity_key(instance=obj)
sqlalchemy
sekarang mengembalikan 3 objek, tetapi flask-admin
hanya mengharapkan 2, maka kesalahannya.
nyata solusi untuk ini adalah menunggu sampai flask-admin
baru versi diunggah ke pip, sampai saat itu, Anda memiliki beberapa opsi.
- Secara manual masuk dan edit
fields.py
itu berkas - Seperti yang dirinci dalam utas masalah itu, batasi
sqlalchemy
ke versi1.2.0b3
. Anda dapat melakukan ini di file requirements.txt Anda, atau secara manual dengan pip upgrade install,pip install --upgrade sqlalchemy==1.2.0b3
- Karena perbaikannya ada di
flask-admin
's master cabang di repositori github mereka, instal versiflask-admin
dengan lokasi pipgit+https://github.com/flask-admin/flask-admin
. Sekali lagi, Anda melakukan ini di file requirements.txt Anda, atau dengan pip upgrade install,pip install --upgrade git+https://github.com/flask-admin/flask-admin
.
Preferensi pribadi saya, dan apa yang telah saya lakukan, adalah opsi 3. Jika Anda melihat melalui kode itu sendiri, itu adalah baris yang ingin dihapus oleh pengelola, dan bagaimana mereka menghadapinya lebih baik, dan secara umum dengan ini hal-hal, saya lebih suka untuk maju (versi terbaru dari flask-admin
) daripada menahan sesuatu (kembalikan sqlalchemy
ke versi sebelumnya), dan tentu saja lebih baik daripada mengedit kode mentah secara manual.