#python #django #markdown #django-markdownx
#python #django #markdown #django-markdownx
Вопрос:
Я установил Mdeditor, и все работает нормально. Моя проблема заключается в том, что я хочу обрезать содержимое моего поста в блоге в шаблоне, и вот как это выглядит.
Это моя модель blog/models.py
class BlogPost(models.Model): # blogpost_set -> queryset
# id = models.IntegerField() # pk
user = models.ForeignKey(User, default=1, null=True, on_delete=models.SET_NULL)
image = models.ImageField(upload_to='image/', blank=True, null=True, height_field='height_field', width_field='width_field')
height_field = models.PositiveIntegerField(default=0)
width_field = models.PositiveIntegerField(default=0)
title = models.CharField(max_length=120)
slug = models.SlugField(unique=True) # hello world -> hello-world
content = MDTextField(default=' ')
# content = models.TextField(null=True, blank=True)
publish_date = models.DateTimeField(auto_now=False, auto_now_add=False, null=True, blank=True)
timestamp = models.DateTimeField(auto_now_add=True)
updated = models.DateTimeField(auto_now=True)
category = models.CharField(max_length=255, default='issue')
private = models.BooleanField(default = False)
tags = TaggableManager()
objects = BlogPostManager()
Это код шаблона для страницы на изображении:
<article class="blog-item heading_space wow fadeIn text-center text-md-left" data-wow-delay="300ms">
<div class="image"> <img src="{{ blog_post.image.url }}" alt="blog" class="border_radius"></div>
<h3 class="darkcolor font-light bottom10 top30"> <a href="{{ blog_post.get_absolute_url }}">{{ blog_post.title|capfirst }}</a></h3>
<ul class="commment">
<li><a href="#."><i class="fas fa-calendar"></i>{{ blog_post.publish_date }}</a></li>
<!-- <li><a href="#."><i class="fas fa-comments"></i></a></li> -->
<li><a href="#."><i class="fas fa-user"></i>{{ blog_post.user }}</a></li>
</ul>
<!-- <p class="top15">blog_post.content|linebreaks|truncatewords:50</p> -->
<div id="content"><textarea>{{blog_post.content}}</textarea>
</div>
</article>
Есть ли какой-нибудь способ заставить его отображать содержимое с помощью truncatewords как markdown? Или что-то, что будет хорошо выглядеть также как markdown?
Документация:
Ответ №1:
Я нашел решение.
Я использовал это в своем шаблоне:
<div id="content"><textarea> {{blog_post.content|truncatechars_html:500}} </textarea></div>