Как сделать ajax-запрос jquery для получения данных из Django ListView?
У меня есть базовый шаблон, в котором есть заголовок и в этом заголовке есть несколько кнопок-ссылок, которые я хотел бы изменить при нажатии, для этого необходимо использовать ajax, чтобы избежать перезагрузки страницы. Запрос должен быть GET для отображения обновленных данных страницы.
То есть, скрипт ajax должен быть выполнен в моем base.html в событии нажатия кнопки, чтобы загрузить шаблон, расширяющий базу. Правильно?
Вид:
class HomeListView(ListView):
model = Cars
template_name = 'cars.html'
context_object_name = 'cars'
def get_queryset(self):
cars = super().get_queryset().order_by('model')
return cars
Данные в шаблоне cars.html (который расширяет base.html) обрабатываются таким образом:
<div class="car-grid">
{% if cars %}
{% for car in cars %}
<div class="car-card">
<img src="{{ car.photo.url }}" alt="{{ car.model }} - {{ car.brand }}">
<h2> {{ car.brand }} {{ car.model }} </h2>
<p> {{ car.factory_year }} - $ {{ car.value }} </p>
</div>
{% endfor %}
{% else %}
<p class="no-results">No results found. </p>
{% endif %}
</div>
Каким образом лучше всего сделать этот ajax-запрос, чтобы получить обновленную контекстную переменную cars? Есть ли способ передать ее сразу во все html в cars.html?