Link Search Menu Expand Document

Передача параметров в URL-запросах

В файле urls.py в списке urlpatterns прописываем необходимое правило обработки url. Допустим, если нам надо обработать переход по адресу вида http://127.0.0.1:8000/category/1/ то мы пишем:

path('category/<int:category_id>/', get_category)

Первым аргументом мы указываем что после category должно идти целое число (int:category_id). Вторым параметром мы указываем имя функции без скобок, которая будет выполняться при переходе по указанному адресу.

Далее в файле views.py мы прописываем функцию get_category:

from .models import Category

def get_category(request, category_id):
	news = News.objects.filter(category_id=category_id)
	categories = Category.objects.all()
	category = Category.objects.get(pk=category_id)
	return render(request, 'news/category.html', {'news': news, 'categories': categories, 'category': category})