到目前为止,我在Ruby on Rails中感觉相当老练,并尝试构建自己的Rails插件。然而,通过这个过程,我意识到我真的没有找到很多很好的资源,清楚地说明了创建Rails gems / plugins的惯例,以及如何有效地完成我想用我做的一些事情。插件。
在我看来,建筑物Rails宝石的文档不是很好,但也许我找不到合适的地方。为了深入了解其他宝石是如何构建的,我已经阅读了用于用户身份验证的Devise插件的一些源代码。我发现几乎没有任何描述类似于Devise如何将自己的方法注入到现有模型中的过程,尽管这似乎对许多好的宝石来说可能是非常有用的。
我的问题是:我应该去哪里学习如何构建优秀的Rails宝石?是否有关于如何做某些事情的约定?
答案 0 :(得分:2)
目前流行的方法是尝试使用 引擎 。引擎基本上允许您将一个应用程序安装在另一个应用程序中,允许您通过添加一个或两个方法来执行任何操作,以添加完整的博客。 official guides有一个非常好的开始分步指南,还有许多好的unofficial guides。引擎基本上由一些初始化代码,应用程序代码和用于测试和开发的虚拟应用程序组成。起初它可能看起来令人生畏,但起初它比听起来要容易得多。祝你好运
答案 1 :(得分:1)
这是使用Bundler进行宝石制作的最现代化方法:
bundle gem your_gem
cd your_gem
编辑your_gem.gemspec并添加说明,摘要和可选网站。 将所需的gems(如rspec)添加到Gemfile中。
rspec --init
touch spec/your_gem_spec.rb
写出好的测试。 将您的代码添加到lib / your_gem.rb。 当你完成构建并推送到rubygems.org时:
gem build your_gem.gemspec
gem push your_gem-0.0.1.gem
就是这样。下次进行更改时,请务必更改version.rb中的版本号。
答案 2 :(得分:0)
请参阅以下链接,它将帮助您构建良好的rails gem