Сравнение сетевых библиотек Android: OkHTTP, Retrofit и Volley [закрыто]

решение от @sttwister является правильным, но может быть упрощено.

class SolutionForm(forms.ModelForm):

    class Meta:
        model = Solution
        exclude = ['problem']

    def clean(self):
        cleaned_data = self.cleaned_data
        if Solution.objects.filter(name=cleaned_data['name'],         
                                   problem=self.problem).exists():
            raise ValidationError(
                  'Solution with this Name already exists for this problem')

        # Always return cleaned_data
        return cleaned_data

В качестве бонуса вы не возвращаете объект в случае дублирования, а только проверяете, существует ли он в базе данных, экономя немного бит исполнений.

553
задан Peter Mortensen 21 January 2017 в 10:49
поделиться