Files
django-ram/ram/bookshelf/serializers.py
Daniele Viganò b10e1f3952 Add shop as a fixed property (#49)
* Add shop field (from properties)

* Update template

* Implement description in BaseModel and then consist

* Make notes internal only

* Fix a merge issue
2025-01-27 23:16:52 +01:00

52 lines
1.2 KiB
Python

from rest_framework import serializers
from bookshelf.models import Book, Catalog, Author, Publisher
from metadata.serializers import (
ScaleSerializer,
ManufacturerSerializer,
TagSerializer
)
class AuthorSerializer(serializers.ModelSerializer):
class Meta:
model = Author
fields = "__all__"
class PublisherSerializer(serializers.ModelSerializer):
class Meta:
model = Publisher
fields = "__all__"
class BookSerializer(serializers.ModelSerializer):
authors = AuthorSerializer(many=True)
publisher = PublisherSerializer()
tags = TagSerializer(many=True)
class Meta:
model = Book
exclude = (
"notes",
"shop",
"purchase_date",
"price",
)
read_only_fields = ("creation_time", "updated_time")
class CatalogSerializer(serializers.ModelSerializer):
scales = ScaleSerializer(many=True)
manufacturer = ManufacturerSerializer()
tags = TagSerializer(many=True)
class Meta:
model = Catalog
exclude = (
"notes",
"shop",
"purchase_date",
"price",
)
read_only_fields = ("creation_time", "updated_time")