У меня есть представление django, которое принимает в качестве параметра путь и возвращает список объектов внутри этого пути.Мне нужно вызывать это представление несколько раз с разными путями.
Это пример, подобный моему:
python views.py
def filelist(request, foo):
files = os.listdir(foo)
context = { 'files' : files, }
return render(request,'template2.html', context)
urls.py похож на:
python urls.py
urlpatterns = [
path('', views.index, name='index'),
path('filelist/<str:path>/', views.filelist, name = "filelist"),
]
Шаблон такой:
HTML template.html
<div class="collapse">
<div class="one">
{% include 'template2.html' %}
</div>
</div>
<div class="collapse">
<div class="two">
{% include 'template2.html' %}
</div>
</div>
<script>
$(".one").load("{% url 'filelist' 'path1' %}", function() {
alert( "Ok1" );
});
$(".two").load("{% url 'filelist' 'path2' %}", function() {
alert( "Ok2" );
});
</script>
Все работает, но переменная {{ files }}
всегда одинакова.Внутри template2.html есть только цикл for, который показывает имена файлов.
Любая помощь?Есть возможность сохранить переменную {{ files }}
в некоторых локальных переменных, а затем использовать ее внутри цикла {% for f in files %}
?Спасибо.