diff --git a/backend/project/api/events/migrations/0002_event_description_event_end_date_event_is_online_and_more.py b/backend/project/api/events/migrations/0002_event_description_event_end_date_event_is_online_and_more.py new file mode 100644 index 0000000..9992f4b --- /dev/null +++ b/backend/project/api/events/migrations/0002_event_description_event_end_date_event_is_online_and_more.py @@ -0,0 +1,52 @@ +# Generated by Django 4.2.11 on 2024-04-02 11:00 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ("events", "0001_initial"), + ] + + operations = [ + migrations.AddField( + model_name="event", + name="description", + field=models.TextField(default=""), + ), + migrations.AddField( + model_name="event", + name="end_date", + field=models.DateField(blank=True, null=True), + ), + migrations.AddField( + model_name="event", + name="is_online", + field=models.BooleanField(default=True, verbose_name="оффлайн или онлайн"), + ), + migrations.AddField( + model_name="event", + name="limitation", + field=models.CharField( + choices=[ + ("Everyone", "everyone"), + ("School", "school"), + ("Student", "student"), + ("Professional", "professional"), + ], + default="everyone", + max_length=64, + ), + ), + migrations.AddField( + model_name="event", + name="location", + field=models.CharField(default="", max_length=512), + ), + migrations.AddField( + model_name="event", + name="start_date", + field=models.DateField(blank=True, null=True), + ), + ] diff --git a/backend/project/api/events/models.py b/backend/project/api/events/models.py index ed10a3c..3684e65 100644 --- a/backend/project/api/events/models.py +++ b/backend/project/api/events/models.py @@ -4,12 +4,52 @@ from api.core.models import BaseModel class Event(BaseModel): - title = models.CharField(max_length=255) + LIMITATIONS = ( + ("Everyone", "everyone"), + ("School", "school"), + ("Student", "student"), + ("Professional", "professional"), + ) + + title = models.CharField( + max_length=255, + ) + users = models.ManyToManyField( "users.User", related_name="events", blank=True, ) + start_date = models.DateField( + null=True, + blank=True, + ) + + end_date = models.DateField( + null=True, + blank=True, + ) + + description = models.TextField( + default="", + ) + + is_online = models.BooleanField( + default=True, + verbose_name="оффлайн или онлайн", + ) + + location = models.CharField( + max_length=512, + default="", + ) + + limitation = models.CharField( + max_length=64, + choices=LIMITATIONS, + default="everyone", + ) + def __str__(self): return self.title