2014-03-27 61 views
1

我想在Redmine插件的设置项目中添加一个新选项卡,但我不知道该怎么做。redmine设置选项卡项目

我通过ISITROL S.A.(www.isitrol.com)获得CCUL Project Managment插件的代码,并用我的功能替换了de funcionlity,但我仍然无法将config_controller的名称更改为我的控制器。

的helperpatch有这个estructure: 需要“管理平台” require_dependency“projects_helper”

module CCULProjectsHelperPatch 
    def self.included(base) 
    base.send(:include, ProjectsHelperMethodsCCUL) 

    base.class_eval do 
    unloadable 
    alias_method_chain :project_settings_tabs, :coste 
    end 
end 
end 

module ProjectsHelperMethodsCCUL 
    def project_settings_tabs_with_coste 
    @tabs = project_settings_tabs_without_coste 
    @action = {:name => 'coste', :controller => 'coste_config', :action => :index, :partial => 'coste_config/index', :label => :tab_ccul} 

    Rails.logger.info "old_tabs: #{@tabs}" 
    Rails.logger.info "action: #{@action}" 
    @tabs << @action #if User.current.allowed_to?(action, @project) 
    @tabs 
    end 
end 

ProjectsHelper.send(:include, CCULProjectsHelperPatch) unless ProjectsHelper.included_modules.include? CCULProjectsHelperPatch 

我已经改变了控制器(和控制器文件的名称)的名称,视图的文件夹的名称,而在init文件中的控制器(I改变到pm_config coste_pm)

这是init文件:

Rails.configuration.to_prepare do 
    require_dependency 'coste_project_helper_patch' 
end 

Redmine::Plugin.register :redmine_coste do 
name 'Costes' 
author 'Me' 
description 'Plugin para calculo coste proyecto. Compatible con Redmine 2.3.x ' 
version '0.1.4' 


project_module :coste do 
permission :cost_manager, {:coste_config => [:index, :create], :coste_project => [:show]} 
end 

menu :project_menu, :coste, { :controller => 'coste_project', :action => 'show' }, :caption => :coste, :param => :project_id 
menu :admin_menu, :coste, { :controller => 'coste_admin', :action => 'show' }, :caption => :coste 
end 

错误是“404你试图接取不存在或页面已被删除”当我尝试一个项目的访问设置

我不知道我需要改变

我希望你能帮助我

回答

1

我发现了问题,在设置的视图模板窗体有旧的控制器的名称。

对于谁在寻找像我这样的设置项目选项卡的方式:我需要在视图中获取数据库信息。 Redmine在创建项目设置选项卡时不会调用控制器 并且上面的代码是基本操作