اذهب إلى المحتوى

السؤال

نشر

أحاول أن أقوم بإرجاع قائمة بكل المستخدمين وإرسال هذه القائمة من خلال API ككود JSON :

@app.route('/users/')
def users():
	# جلب البيانات بإستخدام SQLAlchemy هنا
    
	return jsonify(json_list = qryresult)

ولكن يظهر لي الخطأ التالي:

TypeError: <flaskext.sqlalchemy.BaseQuery object at 0x191b1ed80> is not JSON serializable

 

Recommended Posts

  • 1
نشر

سبب هذا الخطأ هو أنك لم تقم بتنفيذ الإستعلام من الأساس لذلك يتم إرجاع كائن sqlalchemy.BaseQuery وليس قائمة بالمستخدمين، ولحل هذه المشكلة يمكنك أن تستعمل التابع all على النحو التالي:

return jsonify(json_list = qryresult.all())

بهذا الشكل يمكنك أن تقوم بإرجاع قائمة المستخدمين.

يمكنك أيضًا عمل تسلسل serialize كالتالي:

return jsonify(json_list=[i.serialize for i in qryresult.all()])

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...