MVP0
This commit is contained in:
63
backend_django/adsassistant_backend/api/serializers.py
Normal file
63
backend_django/adsassistant_backend/api/serializers.py
Normal file
@@ -0,0 +1,63 @@
|
||||
from rest_framework import serializers
|
||||
from django.contrib.auth.models import User
|
||||
from .models import Brief, TextVariant, Test, Segment, Assignment, ResultEntry, MetricsSnapshot, OptimizationPolicy
|
||||
|
||||
class RegisterSerializer(serializers.ModelSerializer):
|
||||
password = serializers.CharField(write_only=True, min_length=6)
|
||||
class Meta:
|
||||
model = User
|
||||
fields = ("username","password","email")
|
||||
def create(self, validated):
|
||||
user = User(username=validated["username"], email=validated.get("email",""))
|
||||
user.set_password(validated["password"])
|
||||
user.save()
|
||||
return user
|
||||
|
||||
class BriefSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = Brief
|
||||
fields = "__all__"
|
||||
read_only_fields = ("id","owner","created_at")
|
||||
|
||||
class TextVariantSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = TextVariant
|
||||
fields = "__all__"
|
||||
read_only_fields = ("id","created_at")
|
||||
|
||||
class TestSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = Test
|
||||
fields = "__all__"
|
||||
read_only_fields = ("id","owner","created_at")
|
||||
|
||||
class SegmentSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = Segment
|
||||
fields = "__all__"
|
||||
read_only_fields = ("id",)
|
||||
|
||||
class AssignmentSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = Assignment
|
||||
fields = "__all__"
|
||||
read_only_fields = ("id",)
|
||||
|
||||
class ResultEntrySerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = ResultEntry
|
||||
fields = "__all__"
|
||||
read_only_fields = ("id","created_at")
|
||||
|
||||
class MetricsSnapshotSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = MetricsSnapshot
|
||||
fields = "__all__"
|
||||
read_only_fields = ("id","created_at")
|
||||
|
||||
|
||||
class OptimizationPolicySerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = OptimizationPolicy
|
||||
fields = "__all__"
|
||||
read_only_fields = ("id","test","updated_at")
|
||||
Reference in New Issue
Block a user