Hello!

The (if display.max_windows() >= display.windows) works fine to
prevent insert. Behaves as expected.
But is raised even when the row is REMOVED from the edit formset. =/

## Models

class Display(models.Model):
    windows = models.IntegerField()

def max_windows(self):
        total = self.window_set.all().count() #window is a
intermediary class to campaign
        if total:
            return total

## Clean method in CampaignInlineFormSet

def clean(self):
        if any(self.errors):
            # Don't bother validating the formset unless each form is
valid on its own
            return
        for i in range(0, self.total_form_count()):
            form = self.forms[i]
            cleaned_data = form.clean()
            display = cleaned_data.get('display', None)
            if display.max_windows() >= display.windows:
                    raise forms.ValidationError("The display have all
windows occupied.")

This "if" can not stop me remove a row in inline formset. How can I
fix this?
Regards.

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com.
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to