Запрос поля внешнего ключа в форме создания django

У меня есть 3 модели, первая - пользовательская модель пользователя для обработки прав доступа с двумя булевыми полями. разрешений с двумя булевыми полями, вторая - lead с внешним ключом ключом пользователя, третья - event с датой и внешним ключом lead. При создании экземпляра события я хочу видеть только зацепки связанные с вошедшим в систему пользователем в форме создания. Я пробовал несколько решения, например, передать запрос в функцию init с user=None в параметрах с условием if user:, определение функции, которая возвращает набор запросов, но это не сработало, выскочила ошибка " function object has no attribute " и вот тут я получил ошибку ошибка "View.init() принимает 1 позиционный аргумент, но было задано 2. ", любая помощь будет оценена

.
#models
   class Lead(models.Model):
      User = models.ForeignKey(settings.AUTH_USER_MODEL,null=True, blank=True, on_delete=models.SET_NULL)
   class Event(models.Model):
       Lead = models.ForeignKey(Lead,null=True, on_delete=models.CASCADE)

#views
    class EventCreateForUser(LoginRequiredMixin,CreateView):
        template_name = "leads/event_create.html"
        form_class = EventForm
    
        def get_form_kwargs(self):
            kwargs = super(EventForm, self).get_form_kwargs()
            kwargs['user'] = self.request.user
            return kwargs
    
        def get_success_url(self):
            return reverse("leads:lead_list")
    
        def form_valid(self, form):
            event = form.save(commit=False)
            
            event.Lead.User = self.request.user
            
            form.save()
            
            messages.success(self.request, "You have successfully created a lead")
            return super(EventCreateForUser, self).form_valid(form)

    #forms
    class EventForm(ModelForm):
      class Meta:
        model = Event
    
        widgets = {
          'start_time': DateInput(attrs={'type': 'datetime-local'}, format='%Y-%m-%dT%H:%M'),
          'end_time': DateInput(attrs={'type': 'datetime-local'}, format='%Y-%m-%dT%H:%M'),
        }
        fields = '__all__'
        
      def __init__(self,**kwargs):
        user = kwargs.pop('user')
        super(EventForm, self).__init__(**kwargs)
        self.fields['Lead'].queryset = Lead.objects.filter(User = user)
        self.fields['start_time'].input_formats = ('%Y-%m-%dT%H:%M',)
        self.fields['end_time'].input_formats = ('%Y-%m-%dT%H:%M',)
Вернуться на верх