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

Django वेबसाइट में कैप्चा कैसे जोड़ें?


कैप्चा वेबसाइट्स में सत्यापन के लिए उपयोग किए जाने वाले आधुनिक तरीकों में से एक है; यह बहुत कूल तरीका है और हर दूसरी वेबसाइट इसका उपयोग कर रही है। आप गूगल कैप्चा का उपयोग कर सकते हैं लेकिन इसे लागू करना वास्तव में सिरदर्द है; हालांकि Django में, हमारे पास ऐसा करने का एक सरल तरीका है।

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

उदाहरण

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

अब django-simple-captcha लाइब्रेरी इंस्टॉल करें:

pip install django-simple-captcha

settings.py पर जाएं और INSTALLED_APPS के अंदर, अपना ऐप और "captcha" जोड़ें:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    "captchaproject",  # मेरा ऐप नाम
    "captcha"  # मॉड्यूल नाम
]

यह captcha को ऐप के रूप में जोड़ देगा।

प्रोजेक्ट के रूट डायरेक्टरी में, निम्नलिखित लाइनें जोड़ें:

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include("captchaproject.urls")),
    path('/captcha', include("captcha.urls"))
]

यह मेरे ऐप के लिए url और कैप्चा url जोड़ देगा जहां सत्यापन होगा।

ऐप के मेन डायरेक्टरी में, एक forms.py बनाएं और टाइप करें:

from django import forms
from captcha.fields import CaptchaField

class MyForm(forms.Form):
    captcha = CaptchaField()

यहां हमने कैप्चा फील्ड के साथ एक फॉर्म बनाया।

"python manage.py migrate" चलाना न भूलें।

अब ऐप के view.py में, निम्नलिखित लाइनें जोड़ें:

from django.shortcuts import render
from .forms import MyForm

def home(request):
    if request.method == "POST":
        form = MyForm(request.POST)
        if form.is_valid():
            print("success")
        else:
            print("fail")
    form = MyForm()
    return render(request, "home.html", {"form": form})

हम होम व्यू में फॉर्म रेंडर करते हैं और POST हैंडलर में, हम फॉर्म या कैप्चा को वेरिफाई करते हैं और वेरिफिकेशन के बाद, रिजल्ट प्रिंट करते हैं।

templates डायरेक्टरी में एक HTML फाइल बनाएं (डायरेक्टरी जहां आप हर HTML या CSS फाइल जोड़ते हैं जिसे आप रेंडर करते हैं, मैं मानता हूं कि आप जानते हैं और पहले से कॉन्फ़िगर कर चुके हैं) और निम्नलिखित लाइनें जोड़ें:

<!DOCTYPE html>
<html>
    <head>
        <title>Tut</title>
    </head>
    <body>
        <form method="POST" novalidate>
            {% csrf_token %}
            {{form.captcha}}
            <input type="submit" value="submit">
        </form>
    </body>
</html>

यह फ्रंटएंड है जहां हम कैप्चा फॉर्म रेंडर कर रहे हैं।

हम हो गए; अब आप आउटपुट जांचने के लिए आगे बढ़ सकते हैं।

आउटपुट

Django वेबसाइट में कैप्चा कैसे जोड़ें?


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

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

  1. ट्किंटर में इमेज कैसे जोड़ें? ट्किंटर में इमेज कैसे जोड़ें?

    इमेज किसी भी एप्लिकेशन में बहुत उपयोगी ऑब्जेक्ट हैं। हम पायथन में Pillow या PIL पैकेज का उपयोग करके ट्किंटर एप्लिकेशन में इमेज प्रोसेस कर सकते हैं। इमेज लोड करने, निकालने, इमेज पेन कॉन्फ़िगर करने आदि जैसे कई बिल्ट-इन फंक्शन्स हैं। उदाहरण इस उदाहरण में, हम यूज़र से डायलॉग बॉक्स से इमेज चुनने के लिए

  1. वेबसाइट कैसे डाउनलोड करें? वेबसाइट कैसे डाउनलोड करें?

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