ruby - Ruby rubocops 错误 - 分配分支条件大小太高
问题描述
我有一个简单的方法,可以从 Jira 项目中获取数据,并将任务分配给用户,这些任务还有待完成。有没有办法缩小下面的方法以避免 rubocopcondition size too high
错误?
def initialize
@project = Jira::ProjectConnection.new('project_key').call
end
def assigned_task_list
project.issues.map do |issue|
next unless issue.fields.dig('status', 'name') != 'Done' && !issue.fields.dig('assignee', 'name').nil?
{
key: issue.key,
name: issue.fields.dig('assignee', 'name'),
email: issue.fields.dig('assignee', 'emailAddress'),
status: issue.fields.dig('status', 'name')
}
end
end
解决方案
也许像这样?
def assigned_task_list
assigned_tasks.map do |issue|
fields = issue.fields
{
key: issue.key,
name: fields.dig('assignee', 'name'),
email: fields.dig('assignee', 'emailAddress'),
status: fields.dig('status', 'name')
}
end
end
private
def assigned_tasks
project.issues.select do |issue|
issue.fields.dig('status', 'name') != 'Done' &&
issue.fields.dig('assignee', 'name')
end
end
推荐阅读
- mysql - 如何从 MySQL 中的 INFORMATION_SCHEMA 生成表模式?
- rust - Rust 中的期货向量不会同时执行
- mysql - csv文件上传的存储过程问题
- machine-learning - 如何在 ML 中保存特征工程模型
- python - 更新嵌套的 Django 对象,如果下一个对象不存在,则创建一个新对象
- python - 加载模型时出现内存错误
- flutter - 如果 appbar 为空,ListView.builder 显示可用空间
- php - 如何在 PHP 中的特定数组键之前排列数组
- javascript - 将高度缩小到内容大小
- html - 如何使用 css 在方框中创建动画波浪?