如何从视图中呈现特定的 Django 管理页面?
Posted
技术标签:
【中文标题】如何从视图中呈现特定的 Django 管理页面?【英文标题】:How can i render a specific Django admin page from a view? 【发布时间】:2019-11-30 14:32:18 【问题描述】:我知道可以通过这样做从模板反转到管理页面:
% url 'admin:index' %
或
% url 'admin:app_model_add' %
但是如何在我的视图中使用渲染功能来渲染管理页面呢?
当我这样做时
render(request, template_name='admin/index.html')
我看到一个空白的管理页面,其中显示“您无权查看或编辑任何内容”
此外,我不确定呈现特定管理模板的语法是什么,即相当于在模板中使用此反向:
管理员:app_model_add
在视图中不是这样的:
render(request, template_name='admin/app_model_add.html')
【问题讨论】:
不清楚你想要什么。你是什么意思,“渲染一个管理页面”?管理员呈现管理页面;您可以链接或重定向到它。 好的,谢谢你帮我解决了这个问题。我想重定向而不是渲染所以实际上我需要做 redirect(to=reverse('admin:app_model_add')) 请发布您的管理员视图。 【参考方案1】:事实上我不应该尝试渲染一个管理页面,我应该重定向到它。
所以在我看来我应该使用:
重定向(to=reverse('admin:index'))
或
重定向(to=reverse('admin:app_model_add'))
【讨论】:
请用-1添加一些建议,单独投反对票对任何人都没有真正的用处以上是关于如何从视图中呈现特定的 Django 管理页面?的主要内容,如果未能解决你的问题,请参考以下文章
如何从视图生成 Django 管理站点中特定项目的 url?