Ruby on rails 通过插件访问Redmine控制器

Ruby on rails 通过插件访问Redmine控制器,ruby-on-rails,plugins,redmine,Ruby On Rails,Plugins,Redmine,我已经在Redmine官方网站上问了这个问题,但我没有得到任何答案,也许我在这里会有更多的机会 我正在做一个项目,我试图通过添加一些功能来改进Redmine的Dropbox,使用户可以用一个简单的表单上传Redmine文档中的Dropbox文件。Redmine已经有了这种可能性,所以我想使用Redmine源代码中已经定义的控制器和方法 我的一个插件视图中有以下代码: <% html_title "Reddrop - Sync" %> <h2>Synchronisation

我已经在Redmine官方网站上问了这个问题,但我没有得到任何答案,也许我在这里会有更多的机会

我正在做一个项目,我试图通过添加一些功能来改进Redmine的Dropbox,使用户可以用一个简单的表单上传Redmine文档中的Dropbox文件。Redmine已经有了这种可能性,所以我想使用Redmine源代码中已经定义的控制器和方法

我的一个插件视图中有以下代码:

<% html_title "Reddrop - Sync" %>
<h2>Synchronisation page</h2>
<p>Please choose your file</p>
<%= form_tag({:controller => "documents", :action => "add_attachment", :id => @document},    :multipart => true) do %>
<%= file_field_tag 'attachments[dummy][file]', :id => nil, :multiple => true, :onchange => "addInputFiles(this)" %>
<%= submit_tag(value = "Sync this file with Redmine") %>
<% end %>
如果在Redmine源代码中定义了这些控制器/方法,是否可以通过插件调用它们


如果是,也许你能给我一些建议,如何配置我的路线

参见此处
:id=>@document

@document
是包含
nil
的变量,但是它应该包含一些所需记录的
id
(如1,2或任何内容),请在控制器中检查它,一旦解决此问题,确保此错误将得到解决。

验证路由格式
rake|轨道路线

发送所需的参数和正确的命名空间。如果您已经有一个@文档,您可以使用表单_

`<% form_for(@document, url: {action:'add_attachment'} ) do %> `
``

您的
@document
实例变量为
nil
。你是如何设置的?嗯,代码中可能有一些错误,因为我无法尝试。我现在不能准确地回答你,让我检查一下完整的代码。因为这不是一个真正的答案,我想我应该链接到一个插件,它使用dropbox作为Redmine的文件存储后端。如果没有更多的上下文,就很难给出正确的答案。如果你在Github上有一个fork,你可以指向它,这样我们可以测试它,回答这个问题可能会更容易。我找到了另一种上传文件的方法,它工作得很好,但感谢链接,我一定会看一看。也许控制器是命名的,尝试运行
rake路由
,查看路由被调用的内容以及它们是否有名称空间。
`<% form_for(@document, url: {action:'add_attachment'} ) do %> `