Создадим приложение projects для нашего портфолио с помощью команды:
python manage.py startapp projects
После чего в папке проекта будет создана новая папка projects. Укажем эту папку в списке INSTALLED_APPS в файле settings.py (строка 8):
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'projects',
]
Модель
Добавим модель для нашего приложения. Она будет называться Project. Для этого откроем файл my-portfolio\projects\models.py. Добавим в него следующее содержимое (с 3 по 7 строку):
from django.db import models
class Project(models.Model):
title = models.CharField(max_length=100)
description = models.TextField()
technology = models.CharField(max_length=20)
image = models.FilePathField(path="/img")
В качестве БД по-умолчанию Django использует SQLite. Его мы и будем использовать.
Далее нужно создать файл миграции с помощью команды:
python manage.py makemigrations projects
И создать таблицу в БД с помощью команды:
python manage.py migrate projects
Обратите внимание, что в папке проекта появился новый файл db.sqlite3 с БД проекта.
Создадим несколько строчек в созданной таблице projects_project. Но для начала нужно запустить специальную командную строку Django с помощью команды:
python manage.py shell
Как только командная строка будет запущена в начале строки вы увидете >>>.
Теперь с помощью команды:
from projects.models import Project
импортируем нашу модель.
И добавим несколько объектов, чтобы наполнить таблицу в БД данными.
p1 = Project(
title='Мой первый проект',
description='Проект по веб-разработке.',
technology='Django',
image='img/project1.png'
)
p1.save()
p2 = Project(
title='Мой второй проект',
description='Еще один проект по веб-разработке.',
technology='PHP',
image='img/project2.png'
)
p2.save()
p3 = Project(
title='Мой третий проект',
description='Проект по мобильной разработке.',
technology='Android',
image='img/project3.png'
)
p3.save()