Здравствуйте. У меня есть простейшее представление, выводящее форму для добавление статьи в блог:
def create(request):
return render(request, "editor.html")
И есть сама форма
<form action="../upd/" method="post">
{% csrf_token %}
<div>
<label for="name">Название статьи:</label>
<input type="text" name="fname" autocomplete="off" class="form-control" value="{{ name }}">
<br>
<label for="fcat">Отправить статью в категорию:</label>
!!!СПИСОК КАТЕГОРИЙ!!!
<button type="submit"><img src= {% static "sysimg/check.png" %} ></button>
</div>
<div class="row">
<textarea name="fcontent" rows="30" class="f_marg">{{ content }}</textarea>
<p align="center"><a href="../bb_help" target="_blank">Справка по синтаксису BB-code</a></p>
</div>
</form>
<!--Загрузка картинок-->
<form method="post" action="/upload" enctype="multipart/form-data">
<div class="row">
<div col></div>
<p>Загрузка картинки</p>
<input type="file" name="img">
<button type="submit">Загрузить</button>
</div>
</form>
Я переписываю этот код со своего старого PHP проекта, и раньше обработкой загрузки занимался отдельный PHP скрипт, который получал картинку, выдавал код для её вставки в текст, а затем с помощью history.back через JavaScript возвращал пользователя на страницу назад, таким образом напечатанный текст не терялся, а между сервером и клиентом гонялся минимум данных. Сейчас же я хочу реализовать это не так кастыльно, но как я понял, я не могу вызвать другой Python-код в рамках одного представления в качестве действия формы, по крайней мере не используя асинхронность. Подскажите пожалуйста, можно ли через Form Action (или любым другим образом) вызвать другое представление так, чтобы не покидать при этом страницы с формой, и желательно (но не обязательно) не используя при этом асинхронность?