![]() |
1
0
不管是让它独立运行还是在事实发生后将其分离,这可能取决于您对gem和其余代码之间边界的了解程度。如果责任很明确,我会分道扬镳。如果还不清楚事情的开始和结束,你可能会想让它在你做正确的事情之前工作,阻止你自己做多次繁忙的工作。 然而,一旦你准备好了代码,你就可以将代码的可重用部分提取出来(如果这是你的工作方式,那么在这之前),你可能想看看Jeweller, http://github.com/technicalpickles/jeweler 特别是如果你想和社区分享宝石。 还有一本书: 实用的红宝石 ,有点过时了,但你可以找到一份用过的副本,价格不到1美元。 |
![]() |
2
0
我通常首先在需要的地方内联编写功能,比如模型级别等。当我注意到它可以重用时,它将它提取到lib/ext/modulename下的单独模块中。And when its clear that this piece of functionality could be used as a separate gem, i just make a new project, port the code into proper structure, handle any possible initialization, add documentation and commit to github. 稍后,当您需要修改gem时,我只需在单独的项目中完成我的工作,构建gem,用gem install安装它——local project.gem。您也可以从Git安装它作为插件,直接在vendor目录中编辑它,然后将更改返回到gem项目。 |
![]() |
3
0
珠宝商很棒,但有几个选择值得注意:
|
![]() |
Joao Quaresma · 将现有项目添加到待办事项列表 7 年前 |
![]() |
lastone · 为什么我的迁移导致“#<ActiveRecord::ConnectionAdapters::MySQL::TableDefinition”的“NoMethodError:undefined方法'jsonb”? 7 年前 |
![]() |
osexp2000 · 为什么chefDK包含*。水电站和*。h文件 7 年前 |