This commit is contained in:
ITQ
2024-04-03 00:08:07 +03:00
parent 2c7db1bf2a
commit 50a4a5eb58
15 changed files with 5 additions and 126 deletions
@@ -1,7 +1,6 @@
# Generated by Django 4.2.11 on 2024-04-02 17:05
# Generated by Django 4.2.11 on 2024-04-02 21:07
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
@@ -10,7 +9,6 @@ class Migration(migrations.Migration):
dependencies = [
('users', '0001_initial'),
('tree', '0001_initial'),
]
operations = [
@@ -24,10 +22,10 @@ class Migration(migrations.Migration):
('start_date', models.DateField(blank=True, null=True)),
('end_date', models.DateField(blank=True, null=True)),
('description', models.TextField(default='')),
('is_online', models.BooleanField(default=True, verbose_name='оффлайн или онлайн')),
('is_online', models.BooleanField(default=True)),
('location', models.CharField(default='', max_length=512)),
('limitation', models.CharField(choices=[('Everyone', 'everyone'), ('School', 'school'), ('Student', 'student'), ('Professional', 'professional')], default='everyone', max_length=64)),
('tree', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='events', to='tree.tree')),
('tree', models.JSONField()),
('users', models.ManyToManyField(blank=True, related_name='events', to='users.user')),
],
options={
+1 -6
View File
@@ -1,7 +1,6 @@
from django.db import models
from api.core.models import BaseModel
from api.tree.models import Tree
class Event(BaseModel):
@@ -51,11 +50,7 @@ class Event(BaseModel):
default="everyone",
)
tree = models.ForeignKey(
Tree,
on_delete=models.CASCADE,
related_name="events",
)
tree = models.JSONField()
def __str__(self):
return self.title
+1 -10
View File
@@ -1,18 +1,9 @@
from rest_framework import serializers
from api.events.models import Event, Tree
from api.events.models import Event
class EventSerializer(serializers.ModelSerializer):
tree = serializers.JSONField(write_only=True)
class Meta:
model = Event
fields = "__all__"
def create(self, validated_data):
tree = Tree.objects.get_or_create(pk=validated_data.pop("tree"))
validated_data["tree"] = tree.id
return Event.objects.create(**validated_data)