Rails:扩展现有代码

时间:2015-09-11 22:35:22

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

我是一名PHP开发人员,并与Laravel广泛合作。但是,我目前需要对Redmine(Ruby问题跟踪工具)进行小规模的扩展工作。

我是Ruby和Rails的新手,所以我同时试图加快语言和框架的速度。

通常,我需要进行一些迁移,为Redmines现有表添加几列。然后,当在Redmine中触发各种方法(记录时间条目,删除条目,创建项目等)时,我需要进行一些API调用,并在所述列中插入/更新返回的数据。

所以不是非常复杂,但是当我开始工作时,我想知道一些事情:

1)因为我正在扩展现有的Rails应用程序,我应该创建一个插件吗?还是宝石?似乎Redmine有一个“插件生成器”,提供一些锅炉板

2)我需要在Redmine中挂钩现有的Save和Update事件。据我所知,您并不打算覆盖现有的控制器和模型。在那里,有哪些方法用于实现现有应用程序的附加功能?

我找到了这个有用的文章:http://www.redmine.org/projects/redmine/wiki/Plugin_Internals

然而,它提到:

As explained above: you rarely want to override a model/controller. Instead you should either:

    1) add new methods to a model/controller or
    2) wrap an existing method.

据推测,您不会直接将方法添加到原始来源?我注意到他使用模块来实现这一点,但不确定它们是如何工作的。

0 个答案:

没有答案