2011-03-01 8 views
5

django.forms पर हटाए गए बटन को कैसे जोड़ा जाए (संपादित करें, व्यवस्थापक नहीं)?django.forms जेनरेट फॉर्म में डिलीट बटन कैसे जोड़ें?

(/app/model/<id>/delete/ आदि) पर एक डिलीट व्यू जोड़ने के लिए बहुत आसान है लेकिन जेनरेट किए गए फॉर्म के साथ "हटाएं" बटन कैसे जोड़ें?

मुझे कुछ आसान याद आना होगा?

उत्तर

15

एक टेम्पलेट के लिए सबमिट बटन जोड़ें, 'हटाएँ', अपने ध्यान में रखते हुए की जाँच के रूप में नाम सेट करता है, तो क्लिक होने:

if request.POST.get('delete'): 
    obj.delete() 
+0

मैं form.py मेटा: या इसी तरह के माध्यम से स्वचालित रूप से ऐसा करने का कोई तरीका ढूंढ रहा था? – Ryan

+2

Django बटन नहीं करते हैं। उन्हें टेम्पलेट में रखने के लिए आप पर निर्भर है। प्लग करने योग्य ऐप्स (django-uni-form) हैं हालांकि यह आपको फ़ॉर्म परिभाषा में बटन के साथ फ़ॉर्म बनाने की अनुमति देगा। – zsquare

1

आप इस

class DeletableModelForm(forms.ModelForm): 
    """ 
    Model form that allows you to delete the object 
    """ 
    delete = forms.BooleanField(
     initial=False, 
     help_text=_('Check this to delete this object') 
    ) 

    def save(self, commit=True): 
     if self.cleaned_data['delete']: 
      return self.instance.delete() 
     return super(DeletableModelForm, self).save() 
जैसे कुछ सामान्य रूप इस्तेमाल कर सकते हैं

और फिर आप बटन की तरह दिखने के लिए चेकबॉक्स को पुन: स्थापित कर सकते हैं। लेकिन आप शायद नाम के साथ सामान्य बटन के साथ बेहतर हैं ...

संबंधित मुद्दे