我正在为非Web项目寻找一个简单的Ruby框架.我对Rails非常熟悉,所以当我编写纯Ruby时,我想念:
development, test, production)rails c我知道我可以要求ActiveSupport和朋友,但这不是我需要的.它主要是我想念的开发框架.
我调查的一件事是将我的项目作为宝石(即使我最后不需要宝石).例如,使用珠宝商提供版本控制.我确信有更好的方法,但我找不到任何方法.你会用什么?
好吧,这有点是一个由三部分组成的问题.一个threstion,或者tryti ......实际上是行不通的.Threstion它是那么.
关于Rails的一件事是,它并不神奇.它是由具有缺陷的凡人(如超大自我)编写的代码,但也 非常聪明.因此,我们可以在研究他们的工作之后理解它.
1.Rails环境很可爱
Rails环境管理背后的代码实际上非常简单.你有被设置为默认环境,development通过这条线railties/lib/rails/commands/server.rb.你可以在你的应用程序中做同样的事情.运行一些定义的初始化代码YourAwesomeThing.environment = ENV["AWESOME_ENV"] || "development".那么这需要config/environments/#{YourAwesomeThing.environment}.rb你需要的地方.然后,这些文件中的配置可以根据环境修改库的工作方式.
我找不到这样做的行3-1-stable(它已经走了),所以这里有一个我认为它在3-0-stable分支中..
至于可爱的方法,比如Rails.env.production?,它们是由ActiveSupport::StringInquirer班级提供的.
2.Rails控制台是第二次来临
我觉得rails console很棒.我不想创建一个新文件只是为了手动测试一些代码,就像我在PHP的黑天所做的那样.我可以跳进控制台并在那里尝试,然后exit在我完成后输入.很棒.我认为Rails开发人员不太了解控制台.
无论如何,这只是一个irb在它之前加载Rails环境的会话!我再说一遍:Rails 并不神奇.如果你输入irb然后在输入的irb会话中require 'config/environment'你会得到(至少据我所知......)与Rails控制台完全相同的东西!
这是由于Rails的初始化部分中的魔法几乎是神奇的,但是没有,我已经在初始化指南中解释了它将完成并更新为Rails 3.1真的很快我承诺交叉我的心和希望如果我只有时间死!
你可以通过阅读看似与George RR Martin或Robert Jordan写的书相似的文本来学到很多东西.我肯定学到了很多东西!
3.其他人
这是我踌躇不前的地方.您需要Rake/Rails的其他实用程序吗?一切都在那里,你只需要挑选出你需要的部分,这实际上非常简单......但我不能告诉你如何做到这一点,除非你继续画那些目标.
无论如何,这是一个令我兴奋的问题.谢谢你给我一点娱乐:)
编辑
我刚刚在你的问题结尾处注意到了BONUS第四个问题.对项目进行版本控制的重点是什么?为什么不使用像Git这样的版本控制系统来执行此操作以及git tag您认为合适的版本?我认为这将是最有意义的.