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

Django में प्रपत्र विजेट

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

सबसे पहले एक Django प्रोजेक्ट और एक ऐप बनाते हैं। मैंने "tutorial14" . नाम से प्रोजेक्ट बनाया है और "djangoFormWidget" . नाम का ऐप ।

ऐप को settings.py . में जोड़ें और प्रोजेक्ट में ऐप्लिकेशन का URL शामिल करें urls.py.

टेम्पलेट्स, home.html, form.py. . जैसी प्रत्येक मूलभूत फ़ाइलें और फ़ोल्डर बनाएं

उदाहरण

ऐप के urls.py . में -

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

यह दृश्य प्रस्तुत करने के लिए एक मूल URL बनाएगा।

views.py . में -

from django.shortcuts import render
from .forms import CommentForm

# Create your views here.
from django.views.decorators.csrf import csrf_exempt

@csrf_exempt
def home(request):
   if request.method=='POST':
      form=CommentForm(request.POST)
      if form.is_valid():
         form.save()
   commentform=CommentForm()
   return render(request,'home.html',{"commentform":commentform})

यहां, हमने अपना फॉर्म आयात किया और इसके POST और GET अनुरोधों को संभाला।

POST में, हम डेटा को सेव करते हैं और GET में, हम फॉर्म को फ्रंटएंड पर भेजते हैं।

models.py . में -

from django.db import models

# Create your models here.
class CommentModel(models.Model):
   comment=models.CharField(max_length=500)

यहां हमने एक मॉडल बनाया है जिसे हम अपने फॉर्म में इस्तेमाल करेंगे। फ़ॉर्म का उपयोग करने के लिए हमें इस मॉडल की आवश्यकता है।

home.html . में -

<!DOCTYPE html>
<html>
   <head>
      <title>TUT</title>
   </head>
   <body>
      {% for fm in commentform %}
      <form method="post">
         {%csrf_token%}

         {{fm.errors}}<br>
         {{fm.label}}:{{fm}}<br>
         {%endfor%}
            <button type="submit">Submit</button>
      </form>
   </body>
</html>

यह एक साधारण दृश्यपटल है जहाँ हम अपना फ़ॉर्म प्रस्तुत करते हैं।

forms.py . में -

from django import forms
from .models import CommentModel
class CommentForm(forms.Form):
   comment=forms.CharField(widget=forms.Textarea(attrs={'class':'comment','title':'add comment'})) # this is the line which is used for widget, here I added TextArea widget you can see we also assigned class to widget using attrs attribute.

def save(self):
   data=self.data
   modelRef=CommentModel(comment=data['comment'])
   modelRef.save()

यह वह जगह है जहाँ हम अपना रूप बनाते हैं। हमने फ़ॉर्म में टेक्स्ट क्षेत्र को रेंडर करने के लिए बिल्ट-इन Django फॉर्म विजेट का उपयोग किया है।

आउटपुट

Django में प्रपत्र विजेट


  1. Django बाकी-ढांचा JWT प्रमाणीकरण

    यदि आपने कभी Django REST ढांचे के साथ काम किया है, तो आप निश्चित रूप से JWT प्रमाणीकरण के बारे में जानते हैं। जेडब्ल्यूटी प्रमाणीकरण का उपयोग टोकन प्रमाणीकरण के लिए किया जाता है और यह वास्तव में Django में प्रमाणीकरण के लिए एक लोकप्रिय तरीका है। JWT का मतलब JSON वेब टोकन है। आइए देखें कि इसके साथ कै

  1. पायथन - Kivy में BoxLayout विजेट

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

  1. पायथन टिंकर में प्रोग्रेसबार विजेट

    प्रोग्रेसबार एक सामान्य जीयूआई तत्व है जिसका उपयोग कुछ कार्य की प्रगति को दिखाने के लिए किया जाता है। इस लेख में हम देखेंगे कि Python tkinter GUI लाइब्रेरी का उपयोग करके एक प्रोग्रेसबार कैसे बनाया जाता है। नीचे दिए गए कार्यक्रम में हमने tkinter.ttk मॉड्यूल के प्रोग्रेसबार उप-मॉड्यूल को आयात किया है