Thansmit статьи к тегам, отображаемым как строка
Django 3.2.6
Вид:
class Single(DetailView):
template_name = _get_template_name()
model = Article
Миксин:
class TextMixin(models.Model):
txt = models.TextField(blank=False,
null=False,
default="",
verbose_name=gettext_lazy(f"Text ({OmnibusNames.RENDER.value})"), )
class Meta:
abstract = True
Модель:
class Article(SlugMixin,
...
TextMixin,
Темплатег:
@register.inclusion_tag('widgets/toc.html', takes_context=True)
def toc(context)->str:
"""
Usage example: {% toc %}
"""
i = 0
Сейчас я беру этот txt и делаю рендеринг:
def render_template_from_string(a_string: str, a_context: dict = {}) -> SafeString:
template = Template(a_string)
context = Context(a_context)
result = template.render(context)
return mark_safe(result)
На практике это выглядит следующим образом:
Иными словами, я хочу, чтобы пользователи могли использовать теги шаблонов в статьях.
Проблема в том, что я не могу уловить, на какую статью ссылаются эти виджеты.
Можно ли сделать так, чтобы теги шаблонов узнавали, в какой статье они отображаются. Передавать статью в контекст или что-то в этом роде.