具有可调用函数的 Django-admin

发布于 2024-10-14 04:41:18 字数 116 浏览 1 评论 0 原文

Django-admin 视图仅允许更改模型对象的值。但是,是否可以以简单的方式配置或更改管理视图,以便它开始公开对象上的功能?我不是在谈论可以在对象列表顶部的下拉菜单中引入的功能。我的意思是直接访问模型对象上的函数?

Django-admin view allows only for changing the values of model objects. Is it, however, possible to configure or change in an easy way the admin view so that it starts exposing functions on objects? I'm not talking about the functions that can be introduced in the drop-down menu on top of the object list. What I mean is a direct access to functions on model objects?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦归所梦 2024-10-21 04:41:18

您可以通过在 url conf 中添加“^admin/...”url 将您自己的视图添加到管理站点。您可以使用它来相对轻松地扩展管理站点,并通过您自己的视图公开模型方法。请参阅此处的创建自定义管理视图http://www.djangobook。 com/en/1.0/chapter17/ (以及另一种方法和注释:https://docs.djangoproject.com/en/dev/ref/contrib/admin/#adding-views-to-admin-sites )。

要将其添加为管理站点中模型的“更改表单”中的按钮,请覆盖所需模型的 change_form.html 模板(请参阅 https://docs.djangoproject.com/en/dev/ref/contrib/admin/#overriding-admin-模板)。

您可能想要覆盖对象工具块,该块包含页面右上角的按钮。 (在 Django 1.3 中,您可以扩展 object-tools-items 块,请参阅: https://code.djangoproject .com/ticket/12694

(我确信可以构建一个不错的插件/应用程序,它可以使用模型方法列表从 ModelAdmin 中的自定义“object_tools”属性自动将对象工具添加到模型中。如果您发现类似的东西,请告诉我。)

You can add your own view to the admin site by adding an "^admin/..." url in your url conf. You can use this to extend the admin site relatively easy and expose model methods through your own view. See Creating Custom Admin Views here: http://www.djangobook.com/en/1.0/chapter17/ (and another approach and notes here: https://docs.djangoproject.com/en/dev/ref/contrib/admin/#adding-views-to-admin-sites ).

To add this as a button in the model's "change form" in the admin site, override the change_form.html template for the required models (see https://docs.djangoproject.com/en/dev/ref/contrib/admin/#overriding-admin-templates ).

You will probably want to override the object-tools block, which holds the buttons in the top right side of the page. (In Django 1.3 you can extend the object-tools-items block instead, see: https://code.djangoproject.com/ticket/12694 )

(I am quite sure one can build a nice plugin/app that automatically adds object-tools to a model from a custom "object_tools" property in the ModelAdmin with a list of model methods. Let me know id you find something like this.)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文