Redmine it!
redmine插件开发简介
最稳妥的学习应该是先看官方文档,官方还给了一个具体的插件开发教程,不过如果一步不差按照教程敲代码,其实会发现还是有些问题的,需要稍稍改动。
这里,我自己编写了一个简单的插件,基于redmine-3.4.6-passenger版本。
####
插件名称:field_value_adaption
依赖插件:select_to_select2
插件作用:在issue的自定义字段中,根据某个自定义字段的值,自动填写其他自定义字段的值,这些值存在数据库中,如下数据库,当自定义字段1的值选择’便签’时,自动将686,626填写进入自定义子字段4,
数据库设计:
| Id | field_selector | value | field_selector_by | value_by |
| —— | —— | —— | —— | —— |
| 1 | #issue_custom_field_values_1 | 便签 | #issue_custom_field_values_4 | 686,626 |
| 2 | #issue_custom_field_values_1 | 天气 | #issue_custom_field_values_4 | 691 |
####
控制器 adaption
模型 field_value_relation
#设置开发环境变量
1 |
|
1 |
|
#需要在redmine根目录下执行以下代码,默认是/usr/src/redmine
#新建插件
1 |
|
#新建数据库
1 |
|
#迁移数据库
1 |
|
#将数据库编码设置成utf-8,如果没有中文输入,则没必要修改
1 |
|
#插入数据,可以直接在数据库中插入
1 |
|
#创建控制器
1 |
|
修改控制器代码
1 |
|
编写plugins/field_value_adaption/app/views/adaption/get.js.erb
1 |
|
配置路由
1 |
|
配置issue页面发送请求的js plugins/field_value_adaption/assets/javascripts/fields_adaption_get.js
1 |
|
使用hook机制,在所有载入的url包含issue的请求中调用上述js
plugins/field_value_adaption/lib/fields_adaption_hook_listener.rb
1 |
|
在init.rb中应用该hook
1 |
|
Redmine it!的更多相关文章
- bitnami redmine版本由2.3.1升级至3.2.2过程
环境: 操作系统为ubuntu13.**版本,非长期支持版. 安装目录:/opt/redmine-2.3.1-0/ 所有者用户:root 安装过程: 1. 备份2.3.1数据库 sudo /opt/r ...
- redmine整合GIT版本库
redmine整合GIT版本库 服务器的环境: Ubuntu 11.10 64位 Redmine 1.4.5.stable.10943 git version 1.7.5.4 + gitolite ...
- Centos 6.5 部署 redmine 3.3
验证ruby版本 如果有就卸载安装最新的 yum install gcc* openssl openssl-devel -y wget https://ruby.taobao.org/mirrors/ ...
- Redmine 插件安装
将对应的插件都复制进redmine的plugins 安装对应所需要的GEMS bundle install --without development test rmagick 执行插件合并 bund ...
- redmine问题集锦
当我新建LDAP认证模式时,遇到如下错误:
- Redmine新建问题速度慢
Redmine有时候新建问题 ,更新指派人的时候反应很慢, 很大原因应该是发送邮件方式不对. 1.一种方式是改为异步发送 2.另外检测到Redmine日志 ,会发现发送邮件失败 ,也会导致发 ...
- Testlink与Redmine关联
TestLink是一个开源的测试管理工具,它可以有效地管理整个测试流程(测试需求, 测试计划, 测试用例, 测试执行, 测试结果分析),但不能和开发流程统一起来,从而不能及时参与到开发中去,不能使项目 ...
- redmine常见问题
1.测试Pop3邮件收件任务:rake redmine:email:receive_pop3 RAILS_ENV="production" host=pop.cecgw.cn po ...
- Bitnami Redmine插件记录
1.bitnami安装时自带了开发环境,如ruby.rails.devkit. 为了版本兼容,应使用bitnami的命令行. 2.通过use_redmine启动命令行:运行Bitnami\redmin ...
- redmine export long csv file failed: 502 proxy error
After modified the file \apps\redmine\conf\httpd-vhosts.conf: <VirtualHost *:8080> ServerName ...
随机推荐
- __init__.py在Python中的用处
1.Python中的package定义很简单,其层次结构与程序所在目录的层次结构相同, 这一点与Java类似,唯一不同的地方在于,python中的package必须包含一个__init__.py的文件 ...
- AIOps对监控报警架构的挑战
负责百度智能运维(Noah)监控报警系统.通告平台:在精准报警.精准通告.报警收敛.公/私有云监控等方向具有广泛的实践经验. 干货概览 监控报警是故障发现的重要一环,也是百度在AIOps的最早切入 ...
- [Algo] 646. Store Number Of Nodes In Left Subtree
Given a binary tree, count the number of nodes in each node’s left subtree, and store it in the numN ...
- java IO流的概念与分类
DataInputStream && ObjectInputStream 示例 https://blog.csdn.net/hoho_12/article/details/520543 ...
- Ubuntu---gedit 打开windows 下 .txt 文件乱码的解决方法
问题出现情况:在windows 下编辑的 .txt 文件复制到 Ubuntu 下打开,默认打开方式为 gedit 软件打开,出现如下乱码: 出现原因:在 windows 系统下,.txt 文件默认编码 ...
- teminal / console / shell
console从应用程序角度看的(控制台是管理员用的,唯一的) teminal从用户角度看的(终端是用户用的) 应用程序与console交互 用户与teminal交互 teminal可以不存在 tem ...
- java内存区域与内存溢出异常(1)
一. 运行时数据区域 java虚拟机在执行Java程序的过程中,会把它所管理的内存划分为若干个不同的数据区域偶 1.程序计数器 程序计数器是一块较小的内存空间,作用是当前线程所执行的字节码的行号指示器 ...
- Android如何制作自己的依赖库上传至github供别人下载使用
Android如何制作自己的依赖库上传至github供别人下载使用 https://blog.csdn.net/xuchao_blog/article/details/62893851
- index|substr
#!/usr/bin/perl use strict; use warnings; $_ = 'duwanxkm,c.,df;oq123@#!@%$#^'; my $d ='d';my $o = 'o ...
- 在维护项目中的UUID工具类
import java.util.UUID; /** * <p> * Title:uuID生成器 * </p> * <p> * Description:UUID 标 ...