Redmine插件的Rails路由 - ActionController :: RoutingError(未初始化的常量

时间:2016-04-14 13:18:24

标签: ruby-on-rails rails-routing redmine-plugins

我是ruby-on-rails的新手,我正在尝试为Redmine开发插件。我有下一个配置:

DELETE FROM (`cms_module_charts` INNER JOIN `cms_module_charts_kategorie` 
ON `cms_module_charts_kategorie`.`chart_id`=`cms_module_charts`.`chart_id`)
WHERE `chart_id`= 1

然后我以下一个方式创建了Redmine插件:

root:/usr/share/redmine# ruby -v
ruby 1.9.3p484 (2013-11-22 revision 43786) [x86_64-linux]
root:/usr/share/redmine# rails -v
Rails 3.2.22

最后,当我尝试访问http://localhost/requirements时,我在日志文件中出现下一个错误和错误:

网页未找到 您尝试访问的页面不存在或已被删除。

export RAILS_ENV="production" 

bundle exec ruby script/rails generate redmine_plugin redmine_requirements

bundle exec ruby script/rails generate redmine_plugin_model redmine_requirements AddProject Name:string  

bundle exec ruby script/rails generate redmine_plugin_controller redmine_requirements AddProject SaveProjectInformation

# ... edit routes.rb, so that:

root:/usr/share/redmine# more   plugins/redmine_requirements/config/routes.rb
# Plugin's routes
# See: http://guides.rubyonrails.org/routing.html
match "requirements" => "AddProject#SaveProjectInformation"

# ... then exec

bundle exec rake redmine:plugins:migrate
service apache2 restart

有人可以帮我解决吗? 提前谢谢!

1 个答案:

答案 0 :(得分:0)

我建议你为你想要做的事情找到一个类似的插件,因为Redmine并没有真正记录下来,相信我,我处于与你相同的位置。

您可以采取哪些措施来检查更详细的错误,将环境从生产改为开发(无需真正更改),这样做:

(不要在生产服务器上开发插件,总是在本地服务器中开发插件)。

  

导航到\ config \ environment,制作production.rb的副本并更改development.rb内部的内容。

在此之后,您将能够看到开发错误报告。

好吧,现在问题本身:

ActionController::RoutingError (uninitialized constant AddProjectController)

这行代码告诉您AddProjectController不存在。检查文件,内部控制器,名为add_project_controller.rb或类似的东西,并确认控制器的第一行被称为AddProjectController。

应该是这样的:

class AddProjectController < ApplicationController