У меня есть таблица, к которой несколько пользователей будут добавлять даты.
Каждый пользователь может добавить дату. Но вы можете добавить эту дату только один раз.
Как я могу запретить пользователю добавлять одну и ту же дату более одного раза?
Заранее спасибо!
models.py
class MarcacaoRefeicoes(models.Model):
class Meta:
ordering = ['-data']
verbose_name = 'Marcação de Refeição'
verbose_name_plural = 'Marcação de Refeições'
user = models.ForeignKey(User, related_name='marcacao_refeicoes', on_delete=models.CASCADE)
data = models.DateField(null=True, verbose_name='Data')
def __str__(self):
return '{}'.format(self.data)
views.py
def marcacao_refeicoes_adicionar(request, pk=None):
user = get_object_or_404(User, id=pk)
form = MarcacaoRefeicoesForm(request.POST or None, request.FILES or None, initial={'user': pk})
if form.is_valid():
instance = form.save(commit=False)
instance.save()
messages.success(request, 'Marcação adicionada com sucesso!')
return HttpResponseRedirect(reverse("marcacao_refeicoes", kwargs={'pk': pk}))
context = {
"user": user,
"form": form,
}
return render(request,
'gestao/area_individual/marcacao_refeicoes/adicionar.html', context)