Eslam Genidy نشر 22 ديسمبر 2021 أرسل تقرير نشر 22 ديسمبر 2021 (معدل) how to read and write json file with flask تم التعديل في 22 ديسمبر 2021 بواسطة Sam Ahw توضيح السؤال 1 اقتباس
0 Sam Ahw نشر 22 ديسمبر 2021 أرسل تقرير نشر 22 ديسمبر 2021 لقراءة الملف: يجب أن تقوم أولاً بتحديد مسار الملف، ثم قراءة المحتوى باستخدام الدالة readlines وإرساله إلى المستخدم كالتالي: root = os.path.realpath(os.path.dirname(__file__)) json_path = os.path.join(root,'myfile.json') {% قم بتغيير المسار حسب تموضعه ضمن مشروعك %} myfile = open(json_path) json_data = myfile.readlines() myfile.close() return json_data وللكتابة على الملف، يمكنك استخدام الدالة dump الموجودة ضمن مكتبة json: with open('myfile.json', 'w') as f: json.dump(data, f) {% مع استبدال المتغيّر data بالبيانات المطلوبة %} يمكنك أيضاً الاطلاع على المزيد من الخصائص والأمثلة التي تقدمها هذه المكتبة من التوثيق الرسمي. اقتباس
0 سامح أشرف نشر 22 ديسمبر 2021 أرسل تقرير نشر 22 ديسمبر 2021 فلاسك عبارة عن إطار عمل للويب بلغة بايثون، ويمكنك أن تقوم بقراءة ملفات JSON بشكل عادي كما تقوم بها بلغة بايثون، هنا مثال لكيفية قراءة ملف JSON : with open('db.json', 'r', encoding='utf-8') as f: content = f.read() json_data = json.loads(content) print(json_data) كما يمكن إستخدام هذه الطريقة في تطبيق مبني بإستخدام فلاسك Flask كالتالي: from flask import Flask, jsonify import json app = Flask(__name__) @app.route('/', methods=['POST', 'GET']) def index(): with open('db.json', 'r', encoding='utf-8') as f: content = f.read() json_data = json.loads(content) # قراءة ملف json return jsonify(json_data) # إرسال كود json if __name__ == '__main__': app.run(debug=True) لحفظ كود JSON إلى ملف يمكنك أن تقوم بنفس الشيء، على النحو التالي: json_data = {'posts': [{'id': 1, 'title': 'json-server'}, {'id': 2, 'title': 'post 2'}]} content = json.dumps(json_data) # تحويل الكائن إلى كود JSON على شكل نص with open('db.json', 'w', encoding='utf-8') as f: f.write(content) 1 اقتباس
السؤال
Eslam Genidy
how to read and write json file with flask
تم التعديل في بواسطة Sam Ahwتوضيح السؤال
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.