Передача сессии в forms.py в django

Я работаю над проектом django, в котором я использую модель как форму для создания страницы загрузки изображений. Проблема в том, что есть внешний ключ, ссылающийся на таблицу профиля пользователя, который получает список пользователей в выпадающем меню. Я понял, что мне нужно использовать значение сессии от вошедшего пользователя, но до сих пор я не смог передать сессию через форму.

Конечно, я пробовал несколько решений, найденных в похожих вопросах, но эти варианты не сработали для меня

вот код:

формирует :

class ImageForm(forms.ModelForm):

class Meta:
    model = ImageMedia
    fields = ['id', 'Image', 'ImageTitle', 'ImageContext', 'Uploader']
    labels = {'Image' : 'Select Image', 'Image Context' : 'Image Context'}

Модели :

class ImageMedia(models.Model):
    id = models.AutoField(primary_key = True)
    Image = models.ImageField(verbose_name="Image Name", upload_to = "ImageSet")
    UploadDate = models.DateTimeField(verbose_name="Date and time uploaded", auto_now_add=True)
    Uploader = models.ForeignKey(UserProfile, on_delete=models.CASCADE, null=False)
    ImageTitle = models.CharField(verbose_name="Image Title", null=False, max_length=100)
    ImageContext = models.CharField(verbose_name="Image Context", max_length=500, null=True)

    def __str__(self):
        return self.ImageTitle

загрузите шаблон

<body>

<div class="container">
<center><div class="card" style="width: 28rem;">
    <div class="py-5 text-center bg-secondary text-white">
        <div class="card-header">
            <h1 class="mb-3">Upload Image</h1>
        </div>
        <form name="UploadForm" method="POST" enctype="multipart/form-data">
        {% csrf_token %}
        
        {% comment %}
        {{form.Image}}
        {{form.ImageTitle}}
        {{form.Uploader.as_hidden}}
        {{form.ImageContext}}
        {% endcomment %}

        {{form.as_p}}
        <input type="submit" id="submit" class="btn btn-success" name="submit" value="Upload">
    </form>
</div>
</div>
</center>
</div>
</body>

несколько вещей, которые я пробовал...

  1. Я попробовал предоставить значение по умолчанию, используя init для обоих в forms.py и шаблоне, но, похоже, это не сработало
  2. .
  3. Я попробовал сделать пользовательскую форму, передавая значение как request.session['key], но это конфликтует с моим представлением, и оно передает значение изображения как null, но ему удалось получить название изображения и контекст
  4. .

Существует ли другой способ решения этой проблемы? Если да, то я не знаю. Любая помощь будет принята с благодарностью

Вернуться на верх