from django.http import HttpResponse, HttpResponseNotFound from .models import * from django.shortcuts import render, redirect from django.contrib import messages from .models import CallbackRequest # Импортируем из models, а не forms from .forms import CallbackForm from django.utils import timezone from datetime import timedelta from .models import PageView, Visitor from django.db.models import Count from django.contrib.auth.decorators import login_required, user_passes_test menu = [ {'title': "Главная", 'url_name': 'home'}, {'title': "Проекты", 'url_name': 'solution'}, {'title': "Компетенции", 'url_name': 'ability'}, {'title': "Отзывы", 'url_name': 'recall'}, {'title': "Обо мне", 'url_name': 'about'} ] def index(request): posts = Home.objects.filter(is_published=True) context = { 'posts': posts, 'menu': menu, 'title': "Главная страница", 'form': CallbackForm() } return render(request, 'programmer/index.html', context=context) def about(request): context = { 'menu': menu, 'title': "Обо мне" } return render(request, 'programmer/about.html', context=context) def solution(request): posts = Solution.objects.filter(is_published=True) context = { 'posts': posts, 'menu': menu, 'title': "Проекты" } return render(request, 'programmer/solution.html', context=context) def ability(request): posts = Competence.objects.filter(is_published=True) context = { 'posts': posts, 'menu': menu, 'title': "Компетенции" } return render(request, 'programmer/competence.html', context=context) def recall(request): posts = Recall.objects.filter(is_published=True) context = { 'posts': posts, 'menu': menu, 'title': "Отзывы" } return render(request, 'programmer/recall.html', context=context) def show_post(request, post_id): return HttpResponse(f"Отображение № {post_id}") def pageNotFound(request, exception): return HttpResponseNotFound('