我正在编写一个监视外部api的工具,并验证它是否按照记录的方式工作。
基本上我有两种模式:
ServerTest
,它有一个url和一个json字符串,我们希望目标服务器为该url返回
和
与TestResult
具有外键关系的 ServerTest
,包含服务器实际响应的字符串,以及测试发生时间的时间戳。
应用程序会定期运行每个ServerTest
,ping目标服务器,并为每个TestResult
创建一个新的ServerTest
实例。
现在我要做的是在实际和预期的json之间查看json diff。我以为我可以使用这个小部件:http://tlrobinson.net/projects/javascript-fun/jsondiff/。我也在想我可能会在django管理员中嵌入那个小部件。问题是,为了生成diff我需要访问ServerTest实例和最新的相应TestResult实例。通过django admin看起来似乎没有直接的方法。我应该放弃,只是单独查看?我宁愿不这样做,因为我觉得我会继续为该视图添加功能,直到我重新实现了django管理界面的一半。
总结一下,我需要:
1)访问ServerTest实例
2)访问TestResult实例
3)添加一个html容器(例如,在ServerTest管理页面上)
4)运行一些可以访问当前查看的ServerTest的expected_json和最新的相应TestResult的actual_json
的javascript5)让javascript动态地将html注入上述容器
答案 0 :(得分:1)
因为你无论如何都要注入html,我会做一个简单的视图,生成你需要的差异,然后在管理页面中调用它。
要在管理员中添加自定义JS,您可以使用ModelAdmin Media