好吧,我想通了。事实证明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)}