title: 'ManyRelatedManager' object has no attribute 'user'
body: <p>i am trying to create a notifications system but am facing issues doing so. </p>
  
  <p>here is my code: </p>
  
  <p>I created a Notifications model where each entry is a notification. Every time a new entry is made into my SalesTask model , it invokes my signal handler which will create a new entry into my Notifications Model. I will then pass this model into my context and render it in my HTML. </p>
  
  <pre><code>    class Notifications(models.Model):
      notifications_id = models.AutoField(primary_key=True)
      user = models.ForeignKey(User)
      time = models.DateTimeField(auto_now=True)
      message = models.TextField(max_length=100 ,default ='test')
      object_url = models.CharField(max_length=500, default ='test')
      is_read = models.BooleanField(default=False)
  
  
  def CreateTaskNotification(sender,**kwargs):
      if kwargs['created']:
          notification = Notifications.objects.create(user = kwargs['instance'].salesExtra.username,
                                                      message = 'You have been assigned a new task',
                                                      object_url = kwargs['instance'].get_absolute_url(self)
                                                      )
  
  post_save.connect(CreateTaskNotification,sender=SalesTask)
  </code></pre>
  
  <p>The issue with this is that my SalesTask Models : </p>
  
  <pre><code>class SalesTask(models.Model):
  sales_status= (
      ('p1','Phase 1'),
      ('p2','Phase 2'),
      ('p3','Phase 3'),
      ('p4','Phase 4'),
  )
  sales_priority= (
      ('Urgent','Urgent'),
      ('Medium','Medium'),
      ('Low','Low'),
  )
  task_id = models.AutoField(primary_key=True)
  salesExtra= models.ManyToManyField('SalesExtra')
  sales_project= models.ForeignKey('SalesProject',on_delete=models.CASCADE)
  title = models.TextField(max_length=50 , default='Your Title' )
  description = models.TextField(max_length=200 , default='Your Description' )
  priority = models.TextField(max_length=10 , choices= sales_priority ,default='Low' )
  date_time = models.DateTimeField(auto_now=True)
  status = models.TextField(max_length=10, choices= sales_status ,default='p1')
  due_date = models.DateTimeField(default=timezone.now)
  
  def __str__(self):
      return str(self.task_id)
  
  def get_absolute_url(self):
      return reverse('sales-task')
  </code></pre>
  
  <p>has a many to many field with an extended model of User model (SalesExtra) . This is most probably why i am getting the error message :</p>
  
  <pre><code>'ManyRelatedManager' object has no attribute 'user'
  </code></pre>
  
  <p>This is my views for creating a new instance of a task:</p>
  
  <pre><code>class SalesTaskDetailView(CreateView):
  model = SalesTaskingComments
  template_name = 'rnd/task_details.html'
  fields = ['comment']
  exclude = ['comment_id']
  
  def get_context_data(self, **kwargs):
      pk = self.kwargs['pk']
      context = super(SalesTaskDetailView, self).get_context_data(**kwargs)
      context['sales_task'] = SalesTask.objects.filter(task_id = pk)
      context['comments'] = SalesTaskingComments.objects.filter(salesTask__task_id__contains= pk)
      return context
  
  def form_valid(self, form):
      task = get_object_or_404(SalesTask, task_id=self.kwargs['pk'])
      user = get_object_or_404(SalesExtra, user=self.request.user)
      form.instance.salesTask = task
      form.instance.salesExtras = user
      return super(SalesTaskDetailView, self).form_valid(form)
  </code></pre>
  
  <p>My question therefore is : 
  1. Is there a way to create a new entry for every SalesExtra object ? 
  2. Is this the best method for creating a Notifications system? (i am using django 3.0 therefore many applications like django-notifications or django-activities-stream is not compatible.)</p>