DjangoCMS - преобразование данных базы данных в html
Я тестирую DjangoCMS, но не могу понять, как создавать пользовательские плагины, которые позволяют выводить данные из базы данных. Я хотел бы создать плагин, который, например, показывает всех пользователей, но не могу понять, как передать данные в HTML-файл. Я следовал документации DJangoCMS для создания пользовательского плагина, который показывает имя гостя, я уже пытался добавить users = User.objects.all() и затем передать его в функцию render, но я получаю исключение аргумента, потому что функция render не позволяет так много аргументов, так какой же подход в DJangoCMS? models.py
from cms.models.pluginmodel import CMSPlugin
from django.db import models
class Hello(CMSPlugin):
guest_name = models.CharField(max_length=50, default='Guest')
cms_plugins.py
from cms.plugin_base import CMSPluginBase
from cms.plugin_pool import plugin_pool
from django.utils.translation import gettext_lazy as _
from django.contrib.auth.models import User
from .models import Hello
@plugin_pool.register_plugin
class HelloPlugin(CMSPluginBase):
model = Hello
name = _("Hello Plugin")
render_template = "hello_plugin.html"
cache = False
def render(self, context, instance, placeholder):
context = super().render(context, instance, placeholder)
return context
Я думаю, ты можешь сделать это вот так!
context = super().render(context, instance, placeholder)
users = User.objects.all()
context['users'] = users
return context