Django: добавить значения во множество полей, которых нет в базе данных из формы внешнего интерфейса - PullRequest
0 голосов
/ 21 октября 2018

У меня есть множество полей, называемых сертификациями, и я хотел бы, чтобы вошедшие в систему пользователи вводили значения, которые будут создаваться и добавляться в базу данных (а не от администратора).

Есть ли плагин для этого ...если нет, я буду признателен за то, как я могу это сделать.

Я пробовал этот плагин select2, но он не работал

class MyModelSelect2TagWidget(ModelSelect2TagWidget):
queryset = MyModel.objects.all()

def value_from_datadict(self, data, files, name):
    values = super().value_from_datadict(self, data, files, name)
    qs = self.queryset.filter(**{'pk__in': list(values)})
    pks = set(str(getattr(o, pk)) for o in qs)
    cleaned_values = []
    for val in value:
        if str(val) not in pks:
            val = queryset.create(title=val).pk
        cleaned_values.append(val)
    return cleaned_values
...