Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

Django में अपने स्वयं के कस्टम फ़िल्टर टैग बनाना

फिल्टर वास्तव में बहुत उपयोगी हैं, Django में कई अंतर्निहित फ़िल्टर हैं। हम Django में अपने स्वयं के फ़िल्टर भी बना सकते हैं जिसका उपयोग हम Django प्रोजेक्ट्स में किसी भी टेम्पलेट फ़ाइल में कर सकते हैं। फिल्टर का उपयोग कई तरह से किया जाता है जैसे HTML में लोअरकेस से अपरकेस बनाना।

इस लेख में, हम देखेंगे कि Django में एक कस्टम टेम्प्लेट फ़िल्टर टैग कैसे बनाया जाता है। तो, चलिए शुरू करते हैं।

उदाहरण

सबसे पहले, एक Django प्रोजेक्ट और एक ऐप बनाएं।

एक टेम्पलेट जोड़ें और टेम्पलेटटैग आपके ऐप्स रूट प्रोजेक्ट में निर्देशिका। परियोजना संरचना इस तरह दिखेगा -

Django में अपने स्वयं के कस्टम फ़िल्टर टैग बनाना

उदाहरण हमारा ऐप है और ट्यूटोरियल हमारा प्रोजेक्ट है।

सुनिश्चित करें कि आपके टेम्पलेट्स settings.py . में चर ऐसा दिखता है -

import os
TEMPLATES = [
   {
      'BACKEND': 'django.template.backends.django.DjangoTem
plates',
      'DIRS': [os.path.join(BASE_DIR, 'example/templates')]
,
      'APP_DIRS': True,
      'OPTIONS': {
         'context_processors': [
            'django.template.context_processors.debug',
            'django.template.context_processors.request',
            'django.contrib.auth.context_processors.auth',
            'django.contrib.messages.context_processors.messages',
         ],
      },
   },
]

"उदाहरण"जोड़ें settings.py . के INSTALLED_APPS वैरिएबल में . यह बस टेम्पलेट्स . सेट करता है फ़ोल्डर।

टेम्पलेट्स . में फ़ोल्डर, एक home.html add जोड़ें और इसे अभी के लिए ऐसे ही छोड़ दें।

views.py . में का उदाहरण , निम्नलिखित पंक्तियाँ जोड़ें -

from django.shortcuts import render

# Create your views here.
def main(request):
   return render(request,"home.html")

यहाँ हमने केवल अपने मुख्य दृश्य को मुख्य दृश्य में प्रस्तुत किया है।

urls.py . में परियोजना के लिए, निम्नलिखित पंक्तियाँ जोड़ें -

from django.contrib import admin
from django.urls import path, include
urlpatterns = [
   path('',include('example.urls')),
   path('admin/', admin.site.urls),
]

यहां हमने अपने ऐप्स urls.py . शामिल किए हैं मुख्य यूआरएल में।

urls.py . में का उदाहरण या ऐप, निम्नलिखित जोड़ें -

from django.urls import path,include
from . import views
urlpatterns = [
   path('', views.main,name="main")
]

यह मूल पथ सेट करता है urls और हमारे मुख्य विचार प्रस्तुत करें।

बनाएं __init__.py टेम्पलेटटैग . में फ़ोल्डर और एक फ़िल्टर फ़ाइल जिसका नाम "upperfilter.py" . है . इसमें निम्न कोड जोड़ें -

from django.template import Library

register=Library()

@register.filter
def upper(value):
   return value.upper()

यहां हमने एक पुस्तकालय आयात किया और उसे पंजीकृत किया। हमने एक फ़ंक्शन बनाया है या हम ऊपरी . नामक फ़िल्टर कह सकते हैं और हमने इसे डेकोरेटर का उपयोग करके पंजीकृत किया। प्रत्येक फ़िल्टर कुछ मूल्य लेता है; हम परिभाषित कर सकते हैं कि यह कितने मान ले सकता है।

अपने home.html . पर वापस आएं और जोड़ें -

<!DOCTYPE html>
<html>
   <head>
      <title>Tut</title>
   </head>
   <body>
      {% load upperfilter %}
      <h1>{{"hi friends how are you" | upper}}</h1>
   </body>
</html>

यहां फ़्रंटएंड पर, हमने {%%} का उपयोग करके अपना फ़िल्टर लोड किया, और फिर

में तत्व, हमने फ़िल्टर का उपयोग किया।

यह फ़िल्टर लोअरकेस को अपरकेस में बदल देगा।

आउटपुट

बिना फ़िल्टर के -

Django में अपने स्वयं के कस्टम फ़िल्टर टैग बनाना

फ़िल्टर के साथ -

Django में अपने स्वयं के कस्टम फ़िल्टर टैग बनाना


  1. अपने प्रोजेक्ट में Django डीबग टूलबार कैसे जोड़ें?

    Django टूलबॉक्स एक डिबगिंग टूल है जिसका उपयोग डेटाबेस क्वेरीज़, Django वेबसाइट लोडिंग स्पीड और कई अन्य चीजों को डीबग करने के लिए किया जाता है। डिबग टूलबार डेवलपर्स के बीच बहुत लोकप्रिय है और हर कोई इसका उपयोग कर रहा है। तो, आइए देखें कि इसे कैसे लागू किया जाए। उदाहरण myapp . नाम से एक ऐप बनाएं । स

  1. अपनी खुद की लिखावट से एक कस्टम फ़ॉन्ट कैसे बनाएं

    यह मार्गदर्शिका आपको दिखाएगी कि आपके कंप्यूटर पर उपयोग करने के लिए एक फ़ॉन्ट कैसे बनाया जाए जो आपकी अपनी लिखावट पर आधारित हो। YourFonts.com (लिंक एक नए टैब/विंडो में खुलता है) सेवा का उपयोग करके, आप कुछ ही मिनटों में अपना खुद का ट्रू टाइप फ़ॉन्ट बना सकते हैं। कदम दर्दनाक रूप से आसान हैं। आपको ब

  1. अपना खुद का क्लाउड पीसी कैसे सेट करें

    यदि आप एक ऐसा पीसी चाहते हैं जिसे आप कहीं से भी एक्सेस कर सकें, तो आपको क्लाउड पीसी को एक शॉट देना चाहिए। आप कहीं भी हों, आप अपनी फाइलों तक पहुंच प्राप्त करने के लिए एक प्राप्त कर सकते हैं या यहां तक ​​​​कि एक बीफ गेमिंग पीसी भी किराए पर ले सकते हैं ताकि आप ऐसे गेम खेल सकें जिन्हें आपका वर्तमान कंप्