}
get contentTrimmed() {
- return this.document.content.substr(0, 500)
+ return (
+ this.document.content.substr(0, 500) +
+ (this.document.content.length > 500 ? '...' : '')
+ )
}
}
this.currentPageSize,
activeListViewState.sortField,
activeListViewState.sortReverse,
- activeListViewState.filterRules
+ activeListViewState.filterRules,
+ { truncate_content: true }
)
.subscribe({
next: (result) => {
else:
return None
+ def to_representation(self, instance):
+ doc = super().to_representation(instance)
+ if self.truncate_content:
+ doc["content"] = doc.get("content")[0:550]
+ return doc
+
def update(self, instance, validated_data):
if "created_date" in validated_data and "created" not in validated_data:
new_datetime = datetime.datetime.combine(
super().update(instance, validated_data)
return instance
+ def __init__(self, *args, **kwargs):
+ self.truncate_content = kwargs.pop("truncate_content", False)
+
+ super().__init__(*args, **kwargs)
+
class Meta:
model = Document
depth = 1
fields = fields_param.split(",")
else:
fields = None
+ truncate_content = self.request.query_params.get("truncate_content", "False")
serializer_class = self.get_serializer_class()
kwargs.setdefault("context", self.get_serializer_context())
kwargs.setdefault("fields", fields)
+ kwargs.setdefault("truncate_content", truncate_content.lower() in ["true", "1"])
return serializer_class(*args, **kwargs)
def update(self, request, *args, **kwargs):