feat: добавить миграцию для моделей Category и Item, шаблон 404 страницы
All checks were successful
Build and Push Docker Image / build (push) Successful in 27s
All checks were successful
Build and Push Docker Image / build (push) Successful in 27s
- Создана миграция `0001_initial.py` для моделей `Category` и `Item` - Добавлен шаблон `404.html` с пользовательским стилем и макетом ошибки
This commit is contained in:
45
items/migrations/0001_initial.py
Normal file
45
items/migrations/0001_initial.py
Normal file
@@ -0,0 +1,45 @@
|
||||
# Generated by Django 6.0.3 on 2026-04-07 18:31
|
||||
|
||||
import django.db.models.deletion
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='Category',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(max_length=255, verbose_name='Название')),
|
||||
('slug', models.SlugField(unique=True, verbose_name='URL')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': 'Категория',
|
||||
'verbose_name_plural': 'Категории',
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Item',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(max_length=255, verbose_name='Название')),
|
||||
('slug', models.SlugField(unique=True, verbose_name='URL')),
|
||||
('description', models.TextField(blank=True, verbose_name='Описание')),
|
||||
('price', models.DecimalField(decimal_places=2, max_digits=10, verbose_name='Цена')),
|
||||
('is_available', models.BooleanField(default=True, verbose_name='В наличии')),
|
||||
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Дата создания')),
|
||||
('updated_at', models.DateTimeField(auto_now=True, verbose_name='Дата обновления')),
|
||||
('category', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='items', to='items.category', verbose_name='Категория')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': 'Товар',
|
||||
'verbose_name_plural': 'Товары',
|
||||
},
|
||||
),
|
||||
]
|
||||
30
templates/404.html
Normal file
30
templates/404.html
Normal file
@@ -0,0 +1,30 @@
|
||||
{% extends "_layouts/base.html" %}
|
||||
{% load static %}
|
||||
|
||||
{% block title %}404{% endblock %}
|
||||
|
||||
{% block add_css %}
|
||||
<link rel="stylesheet" href="{% static "css/index.css" %}">
|
||||
<link rel="stylesheet" href="{% static 'css/error.css' %}">
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<div class="full-page">
|
||||
{% include "_fragments/header.html" %}
|
||||
|
||||
<main class="container error-page">
|
||||
<h1 class="error-code">4 0 4</h1>
|
||||
<h2 class="error-subtitle">ОЙ, КАЖЕТСЯ ЗДЕСЬ НИЧЕГО НЕТ...</h2>
|
||||
<p class="error-description">
|
||||
Приносим свои извинения! Скорее всего вы попали <br>
|
||||
на несуществующую страницу, предлагаем вам вернутся в каталог.
|
||||
</p>
|
||||
<div class="error-actions">
|
||||
<a href="/catalog/" class="error-btn-1">ПЕРЕЙТИ В КАТАЛОГ</a>
|
||||
<a href="/" class="error-btn-2">НА ГЛАВНУЮ</a>
|
||||
</div>
|
||||
</main>
|
||||
|
||||
{% include "_fragments/footer.html" %}
|
||||
</div>
|
||||
{% endblock %}
|
||||
Reference in New Issue
Block a user