Django: проверка дублирования не удалась - PullRequest
0 голосов
/ 17 марта 2020

В настоящее время я разрабатываю проект Django, который в настоящее время тестируется коллегой

В одной из моих форм редактирования есть проверка на дубликаты (метод cf def clean в forms.py), который представляет собой комбинацию из 3 поля: asp_ent_lo c / med_num / asp_ent_dat

, но даже с помощью этого элемента управления при проверке формы моему коллеге удалось зарегистрировать 2 записи с одним и тем же списком (PA / AAB / 2020-03-16)

проблема в том, что мне не удалось воспроизвести эту ошибку ...

models.py:


class Entree(models.Model):

    asp_ent_cle = models.AutoField(primary_key=True)
    asp_ent_loc = models.CharField("Site concerned by the operation", max_length=10, null=True, blank=True)
    med_num = models.CharField("Trial batch number", max_length=3, null=True, blank=True,)
    asp_ent_dat = models.DateField("Entry date", null=True, blank=True)
    asp_ent_pro_pay = models.CharField("Country of treatment origin in case of entry", max_length=10, null=True, blank=True)
    asp_ent_pro_sit = models.CharField("Processing source site in case of entry", max_length=10, null=True, blank=True)
    opr_nom = models.CharField("Input operator", max_length=10, null=True, blank=True)
    opr_dat = models.DateField("Entry date", null=True, blank=True)
    log = HistoricalRecords()

    class Meta:

        db_table = 'pha_asp_ent'
        verbose_name_plural = 'Entries'
        ordering = ['asp_ent_cle']
        unique_together = ['asp_ent_loc','med_num','asp_ent_dat']   
        permissions = [
            ('can_manage_drugs','Can manage trial drugs'),
        ]

forms.py

1 Ответ

0 голосов
/ 17 марта 2020

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

[ord(c) for c in your_string]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...