Скриншот архива с проектом
Структура проекта
Задание
Ваша задача состоит в том, чтобы разработать удобное, многофункциональное приложение для учета студентов факультета. Базовое название - ИС "Учёт студентов факультета". Приложение должно быть реализовано на Python с применением фреймворка Django и Bootstrap. В качестве базы данных можно использовать любую удобную для вас БД. Приложение должно позволять выполнять CRUD операции и позволять пользователям регистрироваться в системе.
Функционал программы
- добавление студентов, предметов, преподавателей и успеваемости
- редактирование студентов, предметов, преподавателей и успеваемости
- удаление студентов, предметов, преподавателей и успеваемости
- поиск по виду успеваемости
- печать данных: данных о студентах и успеваемости
- регистрация и авторизация пользователей.
Содержание отчета к программе
Фрагмент программного кода
from django.db import models # Create your models here. class Student(models.Model): objects = None surname = models.CharField(max_length=100, help_text="Введите фамилию ученика (студента)", verbose_name="Фамилия") name = models.CharField(max_length=100, help_text="Введите имя ученика (студента)", verbose_name="Имя") date_of_birth = models.DateField(help_text="Введите дату рождения", verbose_name="Дата рождения", null=True, blank=True) group = models.CharField(max_length=100, help_text="Введите номер группы (класса)", verbose_name="Группа") photo = models.ImageField(upload_to='images', help_text="Введите фото", verbose_name="Фото студента", null=True, blank=True) def __str__(self): return f'Фамилия: {self.surname}, Имя: {self.name}' class Meta: verbose_name = 'Студент' verbose_name_plural = 'Студенты' class Teacher(models.Model): objects = None surname = models.CharField(max_length=100, help_text="Введите фамилию", verbose_name="Фамилия") name = models.CharField(max_length=100, help_text="Введите имя", verbose_name="Имя") photo = models.ImageField(upload_to='images', help_text="Введите фото", verbose_name="Фото преподавателя", null=True, blank=True) def __str__(self): return f'Фамилия: {self.surname}, Имя: {self.name}' class Meta: verbose_name = 'Преподаватель' verbose_name_plural = 'Преподаватели' class Subject(models.Model): objects = None name = models.CharField(max_length=100, help_text="Введите название предмета", verbose_name="Предмет") teacher = models.ForeignKey(Teacher, on_delete=models.CASCADE, verbose_name='Преподаватель') def __str__(self): return f'Наименование предмета: {self.name} - Преподаватель: {self.teacher}' class Meta: verbose_name = 'Предмет' verbose_name_plural = 'Предметы' class Statement(models.Model): objects = None student = models.ForeignKey(Student, on_delete=models.CASCADE, related_name='statements', verbose_name='Студент') subject = models.ForeignKey(Subject, on_delete=models.CASCADE, verbose_name='Предмет') ATTENDANCE_CHOICES = [ ('Высокая', 'Высокая'), ('Средняя', 'Средняя'), ('Низкая', 'Низкая'), ] attendance = models.CharField(max_length=50, choices=ATTENDANCE_CHOICES, verbose_name='Посещаемость') GRADE_CHOICES = [ ('Высокая', 'Высокая'), ('Средняя', 'Средняя'), ('Низкая', 'Низкая'), ] grade = models.CharField(max_length=50, choices=GRADE_CHOICES, verbose_name='Успеваемость') ESTIMATION_CHOICES = [ ('Отлично', 'Отлично'), ('Хорошо', 'Хорошо'), ('Удовлетворительно', 'Удовлетворительно'), ('Неудовлетворительно', 'Неудовлетворительно'), ] estimation = models.CharField(max_length=50, choices=ESTIMATION_CHOICES, help_text='Введите оценку', verbose_name='Оценка') date_of_rating = models.DateField(verbose_name='Дата выставления оценки', null=True, blank=True) teacher = models.ForeignKey(Teacher, on_delete=models.CASCADE, verbose_name='Преподаватель') def __str__(self): return f'{self.student} {self.estimation}' class Meta: verbose_name = 'Ведомость' verbose_name_plural = 'Ведомости'
Пояснения по запуску программы
Приветствую! За раннее выражаю благодарность за покупку данной работы (данного проекта)!!!!
Для эффективной работы вам потребуется выполнить ряд действий:
- Убедитесь, что у вас установлен интерпретатор языка Python, желательно той же верси и, что и у меня (я использовал версию 3.12 с изменениями и исправлениями ошибок 3.12.3, так же у меня установлена версия 3.12.4) вам же нужна 3.12.3. Если еще не установили, то скачайте с оффициального сайта - https://www.python.org/
- Убедитесь что вы установили редактор кода - PyCharm или Visual Studio Code. Если вы этого не сделали, то скачайте и установите один из вариантов с оффициальных сайтов: PyCharm можно скачать по данной ссылке - https://www.jetbrains.com/pycharm/download/?section=windows Скачивать и устанавливать необходимо Community версию. Скачать VS Code можно по данной ссылке - https://code.visualstudio.com/download
- После установки всего выше описанного, настройте VS Code для работы с Python установив необходимые расширения (см. инструкцию - https://youtu.be/j5e5gwZgMH8) . Если используете PyCharm то необходимо зайти в настройки, выбрать данный проект StudentPerfomance и выбрать интерпретатор. Установить все библиотеки отмеченные красным подчеркиванием. Перейдите в проект выполнив дейтвие - cd Faculty и введите команду python manage.py runserver.
- Запускаете приложение и пользуетесь. Также вы можете самостоятельно выложить проект на Heroku или любой другой хостинг по вашему выбору .
admin