Actions
Rest api ẅith python » History » Revision 8
« Previous |
Revision 8/18
(diff)
| Next »
Ian Epperson, 2013-02-07 20:46
Updated link for the Python library. Added an example for it too.
Using the REST API with Python¶
Here is the two well-known options for using REST API with python.
PyActiveResource example:¶
# Importing pyactiveresource
from pyactiveresource.activeresource import ActiveResource
class Issue(ActiveResource):
_site = 'http://redmine.foo.org'
_user = 'username'
_password = 'password'
# Get issues
issues = Issue.find()
# Get a specific issue, from its id
issue = Issue.find(1345)
# Issue attributes
# Updating an attribute
Python library example:¶
Suppose Eric fell ill and was out for several days. You need to crawl through the project called Parrot and move any due date for issues assigned to Eric out by two more weeks.
The dateutil library contains a handy method called reativedelta for calculating relative dates.
<code class="python"> from redmine import Redmine from dateutil.relativedelta import relativedelta server = Redmine('http://my-server.com', username='Me', password='seakrit') project = server.projects['parrot'] # Find Eric in the user data for u in server.users: if u.firstname == 'Eric' and u.lastname == 'Idle': user = u break else: raise Exception("Didn't find Eric Idle in the user dateabase") # Extend issues in project assigned to user by two weeks for issue in project.issues(assigned_to_id=user.id): if issue.due_date is not None: issue.due_date += relativedelta(weeks=+2) issue.save('Giving Eric more time to complete - he was out ill') </pre>
Updated by Ian Epperson almost 12 years ago · 8 revisions