الفلاتر في جانغو
اليوم درسنا بسيط وجميل بنفس الوقت
داخل القوالب هناك الاف الفلاتر الجاهزة
ماهي وظيفة الفلاتر ؟
الفلتر من اسمه يقوم بفلترة المخرجات قبل عرضها للمستخدم
وهي تستخدم داخل ملفات html
مثال لاستخدام احد الفلاتر
لو كان لدينا دالة بداخل ملف views.py تعيد قيمة نصية hello world وتحمل مفتاح باسم value كما تعلمنا بالدروس السابقة context
يحمل مفتاح وقيمة
ومن ثم قمنا بعرضها داخل القالب
العرض سيكون كالتالي
{{ value }}
الناتج سيكون بالمتصفح hello world
هناك فلاتر جاهزة بجانغو مثلا لتحويل الحروف الى كبيرة
{{ value|upper }}
سيكون الناتج بالمتصفح HELLO WORLD
وهناك الكثير الكثير من الفلاتر الجاهزة
بالامكان البحث عن كل فلتر ووظيفته يصعب ذكرها هنا
وليس هذا هو موضوعنا لهذا اليوم تحديداَ
ماذا لو اريد فلتر ليس موجود بجانغو ؟
ساقوم بعمل فلتر خاص فيني واقوم بتسجيلة لدة مكتبة القوالب واستخدمة مثال
اقوم بدايةَ بعمل دالة
لنفرض الدالة وظيفتها اقتطاع النص سأستخدم دالة موجودة فعليا ولكن لنفرض انها غير موجودة
الدالة المستخدمه هي مقدمة من جانغو ولكن كمثال
def cut(value, arg):
"""Removes all values of arg from the given string"""
return value.replace(arg, '')
الدالة تحتاج الى معاملين القيمة والنص اللي ارغب بحذفه
جميل
لكي اقوم بتسجيل هذه الدالة المخصصة ساقوم باستدعاء مكتبة القوالب
from django import template
بعدها سأعرف متغير لتعريف المكتبة
register = template.Library()
الخطوة الاخيره التي بقيت لنا هي تسجيل الدالة لكي تتعرف عليها القوالب اثناء طلبها
register.filter('cut', cut)
الان انتهينا من تسجيل دالتنا المخصصة
طريقة استعمالها مثل بقية الفلاتر
{{ somevariable|cut:"0" }}
الاكواد السابقة من موقع جانغو الرسمي فقط للتوضيح
الى هنا واستودعكم الله
محتوى الدورة
django | |
---|---|
1 | متطلبات قبل بدء الدورة |
2 | ماهو جانغو |
3 | انشاء أول مشروع جانغو |
4 | Hello World |
5 | التعامل مع القوالب |
6 | حقن القوالب |
7 | قواعد البيانات-1 |
8 | قواعد البيانات-2 |
9 | التعامل مع لوحة التحكم |
10 | عرض البيانات بالصفحة الرئيسية |
11 | عرض التفاصيل |
12 | اضافة محتوى |
13 | تحديث البيانات |
14 | الاستمارات |
15 | الاستمارات-2 |
16 | تسجيل الاعضاء |
17 | تسجيل الدخول |
18 | الفلاتر في جانغو الدرس الحالي |
19 | التعامل مع قواعد البيانات- متقدم ( الدرس الاخير) |
عن الدرس
0 إعجاب |
1 متابع |
0 مشاركة |
2357 مشاهدات |
منذ 6 سنوات |
التعليقات (0)
عرض المزيد.. جديد مقالاتي
لايوجد لديك حساب في عالم البرمجة؟
تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !