我正在为trac开发一个小的实用程序脚本,它需要知道每个环境中存在的最大票证id。
现在(使用trac 0.11),我使用sqlite api直接从trac数据库提取,但是由于我们有几个具有不同数据库系统的环境,所以预期的小工具脚本变得越来越大,做一些愚蠢的事情。
在trac..*名称空间中有没有什么东西可以让我找到开放环境中存在的最大票证id?
给我一个包含所有票证的数组,或者迭代所有票证的生成器,就能解决我的问题。
我不能使用查询包,因为它是一个自动化的/命令行脚本。
发布于 2011-02-24 21:16:49
为什么需要为DB连接编写自定义代码?有一些Trac对象用于获取从实际DB后端抽象出来的数据库连接。
请参阅Trac Database API。对于0.11,您应该使用Environment.get_db_cnx(),使用.cursor()方法获取一个Cursor对象并运行您的查询。
发布于 2011-02-24 20:56:00
一种可能的方法是通过XmlRpcPlugin查询Trac,票证查询如下所示
"order=id&desc&max=1"显然,它与数据库无关,但是如果你不能/不想在你的Trac环境中安装额外的插件,那么它不是一个好的选择。
https://stackoverflow.com/questions/5104210
复制相似问题