2011-09-21 60 views
0

我將在django中實現多刪除(通過選擇框)視圖。刪除Django前端中的多行

我知道django.contrib.admin.actions中有一個視圖,但我無法將其移植到前端。

我應該在窗體中分配對象ID並將它們POST到我的刪除視圖然後使用.delete()?

我以前沒有編程過,Django是我開始編程冒險的框架。

我正在尋找示例(用於Django視圖+ html),但找不到任何。

回答

0

使用modelformset和手工繪製只用delete期權形式:https://docs.djangoproject.com/en/dev/topics/forms/formsets/#manually-rendered-can-delete-and-can-order

替代解決方案:

使用modelformset創造了一堆的形式與刪除複選框這樣的:

class YourModelForm(forms.ModelForm): 
    id = fields.IntegerField(widget=widgets.HiddenInputField) 
    delete = fields.BooleanField(required=False) 

    def save(self, commit=False): 
     if self.is_valid() and self.cleaned_data['delete']: 
      self.instance.delete()    

    class Meta: 
     model = YourModel 
+0

我看到有一個can_delete選項,它添加了「刪除」布爾字段..將看一看,謝謝! – Robert

+0

@羅伯特:啊,你是對的......我從來沒有見過這樣的人:) – Wolph