|
|
|
@ -3756,6 +3756,7 @@ class AdminBookEditionSerializer(serializers.ModelSerializer): |
|
|
|
tag_detail = AdminBookTagSerializer(source="tag", read_only=True) |
|
|
|
volumes_detail = AdminBookVolumeSerializer(source="volumes", many=True, read_only=True) |
|
|
|
number_of_volumes = serializers.SerializerMethodField() |
|
|
|
books_detail = serializers.SerializerMethodField() |
|
|
|
researchers = AdminBookResearcherSerializer(many=True, required=False) |
|
|
|
editors = AdminBookEditorSerializer(many=True, required=False) |
|
|
|
researcher_author_id = serializers.IntegerField(write_only=True, required=False, allow_null=True) |
|
|
|
@ -3816,6 +3817,16 @@ class AdminBookEditionSerializer(serializers.ModelSerializer): |
|
|
|
def get_number_of_volumes(self, obj): |
|
|
|
return obj.volumes.count() |
|
|
|
|
|
|
|
def get_books_detail(self, obj): |
|
|
|
return [ |
|
|
|
{ |
|
|
|
"id": b.id, |
|
|
|
"title": b.title, |
|
|
|
"slug": b.slug, |
|
|
|
} |
|
|
|
for b in obj.books.all() |
|
|
|
] |
|
|
|
|
|
|
|
def _handle_author_links(self, edition, validated_data): |
|
|
|
request = self.context.get("request") |
|
|
|
data = request.data if request else {} |
|
|
|
|