我有一些代码在某个时候工作但不再工作,这强烈表明 redmine 配置以某种方式涉及(我不是 redmine 管理员),但是缺少任何错误消息使得很难确定什么是错误的. 这是代码:
#!/usr/bin/env ruby
require "rubygems"
gem "activeresource", "2.3.14"
require "active_resource"
class Issue < ActiveResource::Base
self.site = "https://redmine.mydomain.com/"
end
Issue.user = "myname"
Issue.password = "mypassword" # Don't hard-code real passwords :-)
issue = Issue.find 19342 # Created manually to avoid messing up real tickets.
field = issue.custom_fields.select { |x| x.name == "Release Number" }.first
issue.notes = "Testing at #{Time.now}"
issue.custom_field_values = { field.id => "Release-1.2.3" }
success = issue.save
puts "field.id: #{field.id}"
puts "success: #{success}"
puts "errors: #{issue.errors.full_messages}"
运行时,输出为:
field.id: 40
success: true
errors: []
到目前为止一切顺利,除了当我返回 GUI 并查看这张票时,“注释”部分已正确更新,但自定义字段未更改。我确实在 ActiveRecord 代码中添加了一些跟踪,这似乎正在发送我想要的更新,所以我怀疑问题出在服务器端。
顺便说一句,如果您知道使用 REST API 从 Ruby 访问 Redmine 的任何好的示例集合,那也会很有帮助。我可能只是在错误的地方寻找,但我发现的只是一些微不足道的,足以激起人们对更多的兴趣,而且我在 redmine 网站上看到的文档甚至没有列出所有可用字段。(理想情况下,如果示例还指定了它们使用的 redmine 版本,那就太好了。)