ruby-on-rails - 如何解决 Redmine 插件上 QueryAssociationColumn 的 NameError?
问题描述
我是 Ruby 和 Rails 的新手,正在尝试创建一个简单的补丁插件,其中包含另一个插件的额外属性作为列出问题时可用的列。
根据我到目前为止所读到的内容,我写了一个新文件,lib/issue_query_patch.rb
其中包含:
require_dependency 'issue_query'
module IssueQueryPatch
def self.included(base) # :nodoc:
base.send(:include, InstanceMethods)
base.class_eval do
alias_method_chain :available_columns, :story_points
end
end
module InstanceMethods
# Adds the story points column to default the redmine issue query
def available_columns_with_story_points
columns = available_columns_without_story_points
columns << get_story_points_column
return columns
end
def get_story_points_column
return @story_points_column if @story_points_column
@story_points_column = QueryAssociationColumn.new(:agile_data, :story_points, :caption => :label_agile_story_points)
@story_points_column
end
end
end
IssueQuery.send(:include, IssueQueryPatch)
但是当我尝试列出我的问题时,我得到:
NameError(未初始化常量 IssueQueryPatch::InstanceMethods::QueryAssociationColumn):
使用类似的方法QueryColumn
不会引发 NameError。
由于这两个类都是在声明的,app/models/query.rb
所以我不知道为什么会这样。
我怎样才能摆脱这个错误?
解决方案
推荐阅读
- jquery - TVMAZE API:无法按季 jQuery、AJAX、WordPress 分割剧集
- amibroker - 如何将这个长赋值语句转换为 Amibroker 中的函数?
- django - 为什么 Django Postgres 迁移更改字段到 DurationField 会导致错误?
- javafx - 重新插入节点 JavaFX 时出现 ConcurrentModificationException
- flutter - 什么情况下 textAlign 属性在 Flutter 中有效?
- elasticsearch - ELK 中的 auditbeat 失败:index_not_found_exception
- c++ - 查找字符文字的长度(const char *)
- aws-lambda - 带有 aws api 网关和 lambda 的 Olingo
- sql-server - SQL Server 备份作业从哪里运行?
- qt - 布局中的空格按钮相同,但插槽为空