Получение автозаполняемых данных из модели ForeignKey и использование их в форме

Я столкнулся с одной проблемой в Django:

Ниже приведены мои коды, В create_support я создал форму, для отправки тикета, я хочу, чтобы профиль автоматически заполнялся после входа пользователя и не отображался в выпадающем списке, я смог удалить его из выпадающего списка, добавив exclude в forms.py, но после отправки формы профиль все еще пустой, как это решить?

Как получить профиль зарегистрированного пользователя во время отправки заявки в службу поддержки.

models.py

class Support(models.Model):
    profiles = models.ForeignKey(Profile, null=True, on_delete=models.SET_NULL)
    name = models.CharField(max_length=50)
    email = models.EmailField(null=True)
    subject = models.CharField(max_length=255, null=True)
    comments = models.TextField(null=True, blank=True)
   
   def __str__(self):
       return self.name

class Profile(models.Model):
   user = models.OneToOneField(User, on_delete=models.CASCADE)
   first_name = models.CharField(max_length=200)
   last_name = models.CharField(max_length=200)
   email = models.CharField(max_length=200)

views.py

def support(request):
    support = request.user.profile.support_set.all()
    context = {
        'support': support
    }
    return render(request, 'support.html', context)


def createsupport(request):
    support = request.user.profile.support
    form = SupportForm(instance=support)
    if request.method == 'POST':
        form = SupportForm(request.POST)
        if form.is_valid():
            form.save()
            messages.success(request, 'Your Support Query has reached us, will get back to you shortly. ')
            return redirect('blog:articles')
    context = {
        'form': form
    }
    return render(request, 'create_support.html', context)

create_supportsupport.html

  <div class="col-md-9">
    <div class="card card-body">
      <h5>Create New Ticket:</h5>
<form method="POST" action="" enctype="multipart/form-data">
        {% csrf_token %}
         <table border="0">
        {{ form.as_table }}
           </table>
        <input class="btn btn-primary" type="submit" name="submit">
      </form>
    </div>
  </div>


{% endblock %}

forms.py

class ProfileForm(ModelForm):
    class Meta:
        model = Profile
        fields = '__all__'
        
class SupportForm(ModelForm):
    class Meta:
        model = Support
        fields = '__all__'
        exclude = ['profiles']
Вернуться на верх