Django ckeditor и django tables2 безопасный рендер - PullRequest
0 голосов
/ 10 мая 2018

Я использую django tables2 https://github.com/jieter/django-tables2 для отображения данных в таблице в моем шаблоне, которая была создана django-ckeditor https://github.com/django-ckeditor/django-ckeditor. В частности, у меня возникла проблема, связанная с отображением в таблице LinkColumn:

class MyTable(tables.Table):
    notes = tables.LinkColumn('notes_update', kwargs={"pk": Accessor("pk")},attrs={'th': {'id': 'thnotes'}, 'td': {'id': 'tdnotes'}})

Данные отображаются в таблице с тегами html <p> <p/>, созданными ckeditor.

Из того, что я могу собрать, мне нужно визуализировать в шаблоне, используя тег {{ |safe }}, чтобы отображать данные таблицы без тегов html <p> <p/>, но я в растерянности относительно того, как этого добиться в сочетании с django. таблицы2 как моя таблица отображается в моем шаблоне следующим образом:

{% render_table table %}

Я безуспешно пытался окружить это:

  {% autoescape off %}
  {% render_table table %}
  {% endautoescape %}

Есть ли у кого-нибудь идеи помочь мне отобразить notes данные в моей таблице без тегов html <p> <p/>? Любая помощь будет высоко ценится!

1 Ответ

0 голосов
/ 10 мая 2018

Я думаю, что самый простой способ сделать это - использовать tables.TemplateColumn:

class MyTable(tables.Table):
    notes = tables.TemplateColumn(
        template_code='''<a href="{% url 'notes_update' pk=record.pk %}">{{ record.notes |safe }}</a>''',
        attrs={'th': {'id': 'thnotes'}, 'td': {'id': 'tdnotes'}}
    )

Это должно дать вам знакомый шаблон для управления содержимым ваших ячеек таблицы.

...