Mohssen A Mohssen نشر 23 يناير 2022 أرسل تقرير نشر 23 يناير 2022 لدي مشروع فلاسك Flask وقمت بتقسيم المشروع إلى مجلدين Backend و Frontend ، حيث يحتوي المجلد backend على ملفات Python الخاصة بفلاسك Flask، والمجلد Frontend يحتوي على ملفات القوالب: backend |_ app.py frontend |_ view_notifications.html الآن أحاول أن أقوم بإستخدام الملف view_notifications.html من داخل أحد المسارات بالشكل التالي: @app.route('/notifications') def notifications(): return render_template("frontend/view_notifications.html") لكن الكود السابق لم يعمل، حاولت أن أستخدم نقتطين .. للخروج من المجلد ولكن لم يعمل شيء، وفي كل مرة يظهر خطأ TemplateNotFound كيف أقوم بحل هذه المشكلة؟ اقتباس
1 Mohamed Abu Abdo نشر 24 يناير 2022 أرسل تقرير نشر 24 يناير 2022 (معدل) لا تحتاج إلي كتابة المسار داخل render_template فقط يمكنك تغيير المسار الرئيسي من خلال template_folder , تابع التالي #main.py from flask import (Flask, render_template) app = Flask(__name__, template_folder='../frontend/template') @app.route('/notifications') def notifications(): return render_template("view_notifications.html") #إذا كان لديك مسارات فرعية فيمكنك إستخدامها بالشكل التالي @app.route('/page') def pages(): return render_template("post/page.html") وإذا كنت تشك في مسارك يمكنك كتابة المسار كاملاً بالشكل التالي app = Flask(__name__, template_folder=r'C:\Users\mohamed\project\frontend\template') لاتنسي حرف r مهم إذا كنت تستخدم نظام التشغيل ويندوز ومساره الكامل والذي يبدأ ب C:\Users أو D:\x وما شابه وإلا سيواجهك خطأ كهذا app = Flask(__name__, template_folder='C:\Users\mohamed\project\frontend\template') ^ SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape موفق تم التعديل في 24 يناير 2022 بواسطة Mohammed_Emad 1 اقتباس
0 مسعود زاهي نشر 24 يناير 2022 أرسل تقرير نشر 24 يناير 2022 عادة Flask يبحث عن القوالب ( templates) في مستوى الجذر لتطبيقك في مجلد يسمى templates. لتغيير هذا المجلد أو إختيار مجلد آخر ما عليك فعله الا استعمال template_folder على الشكل التالي: app = Flask(__name__, template_folder='frontend') @app.route('/notifications') def notifications(): return render_template("view_notifications.html")#هنا عليك فقط وضع اسم القالب 1 اقتباس
السؤال
Mohssen A Mohssen
لدي مشروع فلاسك Flask وقمت بتقسيم المشروع إلى مجلدين Backend و Frontend ، حيث يحتوي المجلد backend على ملفات Python الخاصة بفلاسك Flask، والمجلد Frontend يحتوي على ملفات القوالب:
backend |_ app.py frontend |_ view_notifications.html
الآن أحاول أن أقوم بإستخدام الملف view_notifications.html من داخل أحد المسارات بالشكل التالي:
لكن الكود السابق لم يعمل، حاولت أن أستخدم نقتطين .. للخروج من المجلد ولكن لم يعمل شيء، وفي كل مرة يظهر خطأ TemplateNotFound
كيف أقوم بحل هذه المشكلة؟
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.