Попробовал так, не прокатило
class HtmlField(serializers.Field):
def to_representation(self, obj):
return mark_safe(obj.body)
class PageSerializer(serializers.ModelSerializer):
body = HtmlField(source='*')
Кстати возникла идея, может на стороне Vue стоит текст отформативать в PLAIN TEXT? На фронте к меня Vue стоит
class Meta:
model = Page
fields = ['body', 'title']
p.s. В общем то да. Все сделал на фронте. Vue сам красиво все отобразил.
<template>
<div class="lead">
{{ $route.params.slug }}
<div v-html="page.data.body"></div>
</div>
</template>
<script>
import axios from 'axios'
const url = 'http://localhost:8000/api/v1/pages/2/'
export default {
name: 'Page',
data () {
return {
page: null
}
},
mounted () {
axios
.get(url)
.then(response => (this.page = response))
}
}
</script>
Тем не менее изначальный вопрос актуален.