我遇到了麻烦:我可以轻松更新发送“ object_list”对象并用其迭代的html模板。
{%for item in object_list%}
#... some operation
{% endfor %}
但是,我还不知道对“ template / admin / add_form.html”中覆盖的admin-template做同样的事情:如何发送和检索添加到admin.py ModelAdmin自定义类中的方法? / p>
这是我的url.py
from django.urls import path
from django.conf.urls import url
from . import views as mysearch_views
from django.contrib import admin
from django.views.generic import ListView, DetailView
from .models import MySearch
# Admin custom
admin.sites.AdminSite.site_header = ‘to be decided’
admin.sites.AdminSite.site_title = ‘to be decided’
admin.sites.AdminSite.index_title = ‘to be decided’
urlpatterns = [
url(r'^$', mysearch_views.my_search, name="my_search"),
url(r'^(?P<id>\d+)/(?P<slug>[\w-]+)/$', DetailView.as_view(model=MySearch, template_name="queries.html"), name="queries"),
url(r'^contacts', mysearch_views.contacts, name="contacts"),
url(r'^result-table', mysearch_views.create_table, name="results"),]
预先感谢
答案 0 :(得分:1)
在您的ModelAdmin
类中,您可以覆盖add_view
方法来为“添加表单”添加自定义上下文数据。其他管理员视图还有其他方法:change_view
用于“更改表单”,等等。
def add_view(self, request, form_url='', extra_context=None):
extra_context = extra_context or {}
extra_context['your_custom_data'] = self.your_custom_method()
return super().add_view(request, form_url, extra_context=extra_context)
然后您可以在覆盖的管理模板中使用{{ your_custom_data }}
。
add_view
和其他相关方法记录在here中。