擅长:python、mysql、java
<p>您可以在以下表单中进行验证:</p>
<pre><code>class CreateSalesRepForm(forms.ModelForm):
class Meta:
model = CreateSalesRep
fields = ['name', 'office']
def clean(self):
cleaned_data = super().clean()
office= cleaned_data.get("office")
name = cleaned_data.get("name")
duplicates = CreateSalesRep.objects.filter(office=office, name=name)
if self.instance.pk:
duplicates = duplicates.filter(pk=self.instance.pk)
if duplicates.exists():
raise forms.ValidationError('Name already in office')
</code></pre>
<p>也就是说,您可以通过将以下内容添加到<code>CreateSalesRep</code>模型中,在model/db级别强制执行此操作:</p>
<pre><code>class CreateSalesRep(models.Model):
...
class Meta:
unique_together = ['office', 'name']
</code></pre>