Skip to content

Commit

Permalink
update project models and serializers
Browse files Browse the repository at this point in the history
  • Loading branch information
Evgeniy-Golodnykh committed Aug 8, 2024
1 parent 9b0094a commit 23af70d
Show file tree
Hide file tree
Showing 6 changed files with 16 additions and 9 deletions.
13 changes: 10 additions & 3 deletions blackfox/api/serializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,15 +12,15 @@ class BodyStatsDiarySerializer(serializers.ModelSerializer):

class Meta:
model = BodyStatsDiary
exclude = ['id',]
exclude = ['id']


class FoodDiarySerializer(serializers.ModelSerializer):
"""A serializer to read FoodDiary instances."""

class Meta:
model = FoodDiary
exclude = ['id',]
exclude = ['id']


class ProjectSerializer(serializers.ModelSerializer):
Expand All @@ -39,7 +39,7 @@ class ProjectSerializer(serializers.ModelSerializer):

class Meta:
model = Project
exclude = ['id',]
exclude = ['id']


class CreateUpdateProjectSerializer(ProjectSerializer):
Expand All @@ -48,6 +48,13 @@ class CreateUpdateProjectSerializer(ProjectSerializer):
user = serializers.PrimaryKeyRelatedField(queryset=User.objects)
coach = serializers.PrimaryKeyRelatedField(queryset=User.objects)

def validate_user(self, value):
if Project.objects.filter(user=value).exists():
raise serializers.ValidationError(
'A project with this User already exists'
)
return value

def to_representation(self, instance):
request = self.context.get('request')
context = {'request': request}
Expand Down
Binary file modified blackfox/db.sqlite3
Binary file not shown.
2 changes: 1 addition & 1 deletion blackfox/training/migrations/0001_initial.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Generated by Django 3.2.16 on 2024-08-08 20:35
# Generated by Django 3.2.16 on 2024-08-08 21:04

import django.core.validators
from django.db import migrations, models
Expand Down
6 changes: 3 additions & 3 deletions blackfox/training/migrations/0002_initial.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Generated by Django 3.2.16 on 2024-08-08 20:35
# Generated by Django 3.2.16 on 2024-08-08 21:04

from django.conf import settings
from django.db import migrations, models
Expand All @@ -10,8 +10,8 @@ class Migration(migrations.Migration):
initial = True

dependencies = [
('training', '0001_initial'),
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
('training', '0001_initial'),
]

operations = [
Expand All @@ -23,7 +23,7 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name='project',
name='user',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='project_user', to=settings.AUTH_USER_MODEL, verbose_name='спортсмен'),
field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='project_user', to=settings.AUTH_USER_MODEL, verbose_name='спортсмен'),
),
migrations.AddField(
model_name='fooddiary',
Expand Down
2 changes: 1 addition & 1 deletion blackfox/training/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,7 @@ def __str__(self):


class Project(models.Model):
user = models.ForeignKey(
user = models.OneToOneField(
User,
on_delete=models.CASCADE,
verbose_name='спортсмен',
Expand Down
2 changes: 1 addition & 1 deletion blackfox/users/migrations/0001_initial.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Generated by Django 3.2.16 on 2024-08-08 20:35
# Generated by Django 3.2.16 on 2024-08-08 21:04

import django.contrib.auth.models
import django.contrib.auth.validators
Expand Down

0 comments on commit 23af70d

Please sign in to comment.