Django 2.1 - Editing mixins

मिश्रण का संपादन




django

मिश्रण का संपादन

Django के संपादन दृश्यों के निर्माण के लिए निम्नलिखित मिश्रणों का उपयोग किया जाता है:

ध्यान दें

जेनेरिक एडिटिंग व्यूज के डॉक्यूमेंटेशन में इन्हें एडिटिंग व्यूज में कैसे मिलाया जाता है, इसके उदाहरण देखे जा सकते हैं

FormMixin

class django.views.generic.edit.FormMixin

एक मिक्सिन वर्ग जो फॉर्म बनाने और प्रदर्शित करने के लिए सुविधाएं प्रदान करता है।

mixins

तरीके और गुण

initial

प्रपत्र के लिए प्रारंभिक डेटा युक्त एक शब्दकोश।

form_class

तत्काल करने के लिए प्रपत्र वर्ग।

success_url

प्रपत्र सफलतापूर्वक संसाधित होने पर URL पुनर्निर्देशित करता है।

prefix

उत्पन्न रूप के लिए prefix

get_initial()

प्रपत्र के लिए प्रारंभिक डेटा प्राप्त करें। डिफ़ॉल्ट रूप से, initial की एक प्रति लौटाता है।

get_form_class()

फॉर्म क्लास को तुरंत पुनः प्राप्त करें। डिफ़ॉल्ट form_class द्वारा।

get_form(form_class=None)

get_form_kwargs() का उपयोग करके get_form_kwargs() का एक उदाहरण इंस्टेंट करें। यदि form_class प्रदान नहीं किया जाता है तो get_form_class() का उपयोग किया जाएगा।

get_form_kwargs()

फ़ॉर्म को तत्काल करने के लिए आवश्यक कीवर्ड तर्क बनाएं।

initial तर्क get_initial() लिए सेट है। यदि अनुरोध एक POST या PUT , तो अनुरोध डेटा ( request.POST और request.FILES ) भी प्रदान किया जाएगा।

get_prefix()

उत्पन्न रूप के लिए prefix निर्धारण करें। डिफ़ॉल्ट रूप से prefix देता है।

get_success_url()

जब प्रपत्र सफलतापूर्वक सत्यापित हो जाए, तो URL को पुनर्निर्देशित करने के लिए निर्धारित करें। डिफ़ॉल्ट रूप से success_url लौटाता है।

form_valid(form)

get_success_url() पुनर्निर्देश करता है।

form_invalid(form)

संदर्भ के रूप में अमान्य फ़ॉर्म प्रदान करते हुए एक प्रतिक्रिया प्रस्तुत करता है।

get_context_data(**kwargs)

कॉल get_form() और परिणाम डेटा को 'फॉर्म' नाम के साथ जोड़ता है।

ModelFormMixin

class django.views.generic.edit.ModelFormMixin

एक फॉर्म मिक्सिन जो मॉडलफ़ॉर्म पर काम करता है, बजाय एक स्टैंडअलोन फॉर्म के।

चूंकि यह SingleObjectMixin उपवर्ग है, इसलिए इस SingleObjectMixin के उदाहरणों में ModelForm के हेरफेर करने वाले ऑब्जेक्ट के प्रकार का वर्णन करते हुए model और queryset विशेषता तक पहुंच है।

यदि आप दोनों fields और form_class विशेषताएँ निर्दिष्ट करते हैं, तो एक form_class अपवाद उठाया जाएगा।

mixins

तरीके और गुण

model

एक मॉडल वर्ग। स्पष्ट रूप से प्रदान किया जा सकता है, अन्यथा self.object या self.object जांच करके निर्धारित किया जाएगा।

fields

खेतों के नामों की एक सूची। इसकी व्याख्या उसी प्रकार से की Meta.fields जैसे कि Meta.fields की Meta.fields विशेषता।

यह एक आवश्यक विशेषता है यदि आप फॉर्म क्लास को स्वचालित रूप से उत्पन्न कर रहे हैं (जैसे model का उपयोग करके)। इस विशेषता को स्वीकार करने के परिणामस्वरूप एक ImproperlyConfigured अपवाद हो जाएगा।

success_url

प्रपत्र सफलतापूर्वक संसाधित होने पर URL पुनर्निर्देशित करता है।

success_url में शब्दकोश स्ट्रिंग स्वरूपण शामिल हो सकता है, जिसे ऑब्जेक्ट के फ़ील्ड विशेषताओं के विरुद्ध प्रक्षेपित किया जाएगा। उदाहरण के लिए, आप एक मॉडल पर slug क्षेत्र से बने URL पर पुनर्निर्देशित करने के लिए success_url="/polls/{slug}/" का उपयोग कर सकते हैं।

get_form_class()

फॉर्म क्लास को तुरंत पुनः प्राप्त करें। यदि form_class प्रदान किया जाता है, तो उस वर्ग का उपयोग किया जाएगा। अन्यथा, कोई ModelForm के साथ या मॉडल के साथ जुड़े मॉडल का उपयोग करके ModelForm जाएगा, जिसके आधार पर विशेषता प्रदान की जाती है।

get_form_kwargs()

मानक get_form_kwargs() में वर्तमान उदाहरण ( self.object ) जोड़ें।

get_success_url()

जब प्रपत्र सफलतापूर्वक सत्यापित हो जाए, तो URL को पुनर्निर्देशित करने के लिए निर्धारित करें। अगर यह प्रदान किया जाता है, तो django.views.generic.edit.ModelFormMixin.success_url देता है; अन्यथा, ऑब्जेक्ट के get_absolute_url() का उपयोग करने का प्रयास करता है।

form_valid(form)

प्रपत्र आवृत्ति सहेजता है, दृश्य के लिए वर्तमान ऑब्जेक्ट सेट करता है, और get_success_url() लिए रीडायरेक्ट करता है।

form_invalid()

संदर्भ के रूप में अमान्य फ़ॉर्म प्रदान करते हुए एक प्रतिक्रिया प्रस्तुत करता है।

ProcessFormView

class django.views.generic.edit.ProcessFormView

एक मिश्रण जो मूल HTTP GET और POST वर्कफ़्लो प्रदान करता है।

ध्यान दें

इसे 'ProcessFormView' नाम दिया गया है और सीधे django.views.generic.base.View से इनहेरिट किया जाता है, लेकिन अगर स्वतंत्र रूप से उपयोग किया जाता है, तो यह टूट जाता है, इसलिए यह एक django.views.generic.base.View से अधिक है।

का विस्तार

तरीके और गुण

get(request, *args, **kwargs)

get_context_data() के साथ बनाए गए संदर्भ का उपयोग करके एक प्रतिक्रिया get_context_data()

post(request, *args, **kwargs)

एक प्रपत्र का निर्माण करता है, वैधता के लिए प्रपत्र की जाँच करता है, और तदनुसार इसे संभालता है।

put(*args, **kwargs)

PUT कार्रवाई को भी नियंत्रित किया जाता है और बस post() करने के लिए post() माध्यम से सभी मापदंडों को पारित करता है।

DeletionMixin

class django.views.generic.edit.DeletionMixin

DELETE http कार्रवाई से निपटने में सक्षम करता है।

तरीके और गुण

success_url

जब नामांकित ऑब्जेक्ट को सफलतापूर्वक हटा दिया गया हो, तो url पुनर्निर्देशित होता है।

success_url में शब्दकोश स्ट्रिंग स्वरूपण शामिल हो सकता है, जिसे ऑब्जेक्ट के फ़ील्ड विशेषताओं के विरुद्ध प्रक्षेपित किया जाएगा। उदाहरण के लिए, आप मॉडल पर parent_id फ़ील्ड से बाहर बने URL पर पुनर्निर्देशित करने के लिए success_url="/parent/{parent_id}/" का उपयोग कर सकते हैं।

delete(request, *args, **kwargs)

लक्ष्य ऑब्जेक्ट को पुनर्प्राप्त करता है और इसकी delete() विधि को कॉल करता है, फिर सफलता URL पर रीडायरेक्ट करता है।

get_success_url()

नामांकित ऑब्जेक्ट को सफलतापूर्वक हटा दिए जाने पर url को पुनर्निर्देशित करता है। डिफ़ॉल्ट रूप से success_url लौटाता है।