【问题标题】:Access other model from django admin从 django admin 访问其他模型
【发布时间】:2012-07-07 05:35:40
【问题描述】:

我正在编写一个工具来监控外部 api 并验证它是否按文档说明工作。

基本上我有两个模型:

ServerTest,它有一个 url 和一个我们期望目标服务器为该 url 返回的 json 字符串

TestResultServerTest 有外键关系,包含服务器实际响应的字符串以及测试发生时间的时间戳。

应用程序会定期运行每个ServerTest,ping TargetServer,并为每个ServerTest 创建一个新的TestResult 实例。

现在我想做的是查看实际 json 和预期 json 之间的 json 差异。我在想我可能会使用这个小部件:http://tlrobinson.net/projects/javascript-fun/jsondiff/。我还想我可能会将该小部件嵌入到 django 管理员中。问题是,为了生成差异,我需要访问 ServerTest 实例和最新的相应 TestResult 实例。似乎没有直接的方法可以通过 django admin 执行此操作。我应该放弃并单独提出观点吗?我宁愿不这样做,因为我觉得我会继续向该视图添加功能,直到我重新实现了 django 管理界面的一半。

回顾一下,我需要:

1) 访问一个 ServerTest 实例

2) 访问一个 TestResult 实例

3) 添加一个 html 容器(例如,在 ServerTest 管理页面上)

4) 运行一些可以访问当前查看的ServerTest的expected_json和最新对应TestResult的actual_json的javascript

5) 让 javascript 将 html 动态注入到上述容器中

【问题讨论】:

    标签: python django admin


    【解决方案1】:

    既然你无论如何都在注入 html,我会做一个简单的视图,生成你需要的差异,然后在管理页面中调用它。

    要在admin中添加自定义JS,可以使用ModelAdmin Media

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-08-27
      • 2018-03-14
      • 2010-10-26
      • 2021-11-19
      • 2010-12-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多