【问题标题】:Redmine API - Creating IssuesRedmine API - 创建问题
【发布时间】:2013-02-14 15:19:21
【问题描述】:

我正在尝试使用 Redmine 的 API 来创建问题,但它似乎并没有让我指定谁在提交票证。我已经尝试获取author_id,但它似乎不起作用。

这是 POST 中的 JSON 数据的样子:

    {
        "issue": {
            "author_id": 3,
            "project_id": 26,
            "subject": "Q-12345678",
            "description": "This is a test"
        }
    }

正在创建问题,但作者被设置为匿名。有什么建议吗?

【问题讨论】:

    标签: redmine redmine-api


    【解决方案1】:

    好吧,我想通了。事实证明author_id 没有设置为“安全参数”。

    我打开app/models/issue.rb并在第337行添加author_id

    所以现在这段代码看起来像这样:

        safe_attributes 'tracker_id',
          'status_id',
          'category_id',
          'author_id',
          'assigned_to_id',
          'priority_id',
          'fixed_version_id',
          'subject',
          'description',
          'start_date',
          'due_date',
          'done_ratio',
          'estimated_hours',
          'custom_field_values',
          'custom_fields',
          'lock_version',
          'notes',
          :if => lambda {|issue, user| issue.new_record? || user.allowed_to?(:edit_issues, issue.project) }
    

    编辑

    我认为这可能是app/models/issue.rb(第 375 行)中更好的解决方案

    之后

        safe_attributes 'parent_issue_id',
            :if => lambda {|issue, user| (issue.new_record? || user.allowed_to?(:edit_issues, issue.project)) &&
              user.allowed_to?(:manage_subtasks, issue.project)}
    

    我加了

        safe_attributes 'author_id',
            :if => lambda {|issue, user| issue.new_record? || user.allowed_to?(:admin, issue.project)}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-16
      • 1970-01-01
      相关资源
      最近更新 更多