【问题标题】:How to refresh the admin/app view after some time in django如何在 django 中一段时间​​后刷新管理员/应用程序视图
【发布时间】:2022-07-15 12:04:09
【问题描述】:

我的应用有两个用户,前端和后端。 前端用户插入数据,后端用户在后台查看应用记录。

我想每隔 10 秒左右刷新一次管理面板的应用视图。

在前端,我可以使用这个脚本来刷新

<script type="text/javascript">
  setTimeout(function(){
    location = ''
  },60000)
</script>

但是如何刷新后端呢? 我已经搜索过,有很多使用 ajax jquery 和其他的东西,但我很抱歉我不熟悉它们中的任何一个。

只想要一个简单的解决方案。有可能吗?

【问题讨论】:

  • 一个简单的解决方案是创建一个视图以在前端显示该数据并使用权限来限制哪些用户可以看到该数据))
  • 但是admin或者Backend用户也会更新,看数据。
  • 最好不要让后端用户拥有管理员的 url 或有权访问它,只有你(管理员)应该有权访问它。这就是为什么我说最好有一个视图并制作一些逻辑(使用权限或......)来查看,更新,验证,......数据,你可以看到谁做了什么,但在管理员中我认为你不能这样做。
  • 好的。让我看看我能不能让它工作......

标签: python django view django-views admin


【解决方案1】:

覆盖管理员更改列表模板并添加与您相同的代码。 制作一个名为[your model]_changelist.html的模板

{% extends "admin/change_list.html" %}
{% block extrahead %}
    {{ block.super }}
    <script>
       [your script]
    <script>
{% endblock %}

然后在admin.py中

class [your model]Admin(admin.ModelAdmin):
     change_list_template = "admin/[your app]/[your model]_changelist.html"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-07-20
    • 2016-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多