我正在开发一个项目来扩展我公司使用的测试套件。其中一个被问到我的事情是将网站链接到我们的Github代码源,以便开发团队可以继续跟踪那里的问题,而不是试图查看两个地方。我能够做到这一点,但问题是每次报告错误时都会打开一个问题。
我想在我的Django模型中添加一个字段,用于跟踪发送给Github的Issue object(来自github3.py包装器)。我想用它来检查是否已经在Github中由BugReport的那个实例创建了一个问题,如果它已经被创建,编辑问题而不是在Github中创建另一个重复的问题。 Django有没有能够处理这种引用的东西?
我正在使用Django 1.3.1和Python 2.7.1
修改
我能够使用esauro的建议来解决我的具体问题。然而,正如mkoistinen所说,如果这个问题出现在一个程序中,解决方法并不像这个那样简单,那么 应该创建一个像我最初问过的对象引用,或者是不好的做法?如果可以像这样制作一个对象引用,那么你将如何使用Django模型呢?
答案 0 :(得分:0)
我知道这已经晚了,但我是github3.py的创建者。
如果您想通过数字来解决问题,有几种不同的方法可以做到这一点。我不确定你是如何与API交互的,但你可以这样做:
import github3
i = githbu3.issue('repo_owner', 'repo_name', issue_number)
或
import github3
r = github3.repository('repo_owner', 'repo_name')
i = r.issue(issue_number)
或
import github3
g = github3.login(client_key='client_key', client_secret='client_secret')
i = g.issue('repo_owner', 'repo_name', issue_number)
# or
r = g.repository('repo_owner', 'repo_name')
i = r.issue(issue_number)
否则,如果您在不知道号码的情况下寻找问题:
import github3
r = github3.repository('repo_owner', 'repo_name')
for i in r.iter_issues():
if 'text to search for' in i.body_text:
i.edit('...')
这已经晚了几个月,但我希望它可以帮助你和其他可能需要帮助的人。也可以在将来直接向我发送电子邮件。