2009-07-25 25 views
2

我最近開始研究Ruby on Rails中的一個小型個人項目,並遇到了一些我找不到明確答案的東西。如果任何人都有足夠的知識來幫助,那將不勝感激。我的所有問題如下:使用Rails gem代替vendor/rails有什麼好處?

  • 使用Rails Gem而不是在vendor/rails中有什麼好處?
  • 使用Rails 2.3.2有什麼好處嗎?我希望使用的一些插件似乎與2.3.2(ActiveScaffold)不兼容?它是否提供了比2.2更好的改進?
  • 使用Ruby 1.9有什麼好處?許多插件尚不兼容。它是否比舊版本有很大的改進?

感謝您的任何幫助,您可能會提供。

+2

總的來說,你應該試着留下每個問題的一個問題,它很難回答多個問題,而答案往往不太全面 – 2009-07-26 04:16:17

回答

3
  1. vendor/rails可能會讓您的項目更加便攜。運行rake gems:deploy的部署可能會有些不可靠,特別是如果升級了「Framework Gem」(您必須手動執行這些操作)。

    供應商/ rails的缺點是它使你的部署稍微大一些(需要推送更多的文件),但是如果你使用git和類似Capistrano的東西,這隻會讓你在最初的部署中陷入困境......但它沒有那麼糟糕。

  2. 我不認爲有什麼好處;它只取決於你是否需要2.3.2的功能。顯然你想嘗試運行最新版本,使升級更輕鬆。我發現如果你想在將來有任何升級改變,你總是需要升級Rails下的框架。

  3. 表現。正如你指出的,很多插件都被破壞了。這是一個雞與雞蛋的問題,但加班這應該解決它自己。我們在任何生產應用程序中都沒有運行1.9,因爲它在其他堆棧中太不穩定了。

1

我會解決寶石問題。

我以前使用過售貨寶石,但是我幾乎已經離開它了,除非在極少數情況下,我需要爲了某種目的而分叉寶石來定製它,在這種情況下,我會供應寶石。

從我的角度來看,廠商的主要原因是你不能用C模塊清潔地提供任何寶石,因爲它們需要編譯。

一個非常好的選擇是使用諸如geminstaller之類的gem管理工具,它允許您配置項目所針對的寶石和特定版本的gem,以便在部署中擁有一組一致的gem。

1

使用 Rails Gem而不是 vendor/rails有什麼好處?

最大的好處是你不會在你的項目中攜帶完整的rails源代碼,另一個好處是轉移到新版本的rails會涉及更少的工作。

請記住,gem命令將允許您安裝寶石的特定版本。

使用Rails 2.3.2有什麼好處嗎?希望使用的一些插件I 似乎不是 兼容2.3.2 (ActiveScaffold)?它是否提供了比2.2更好的改進 ?

A lot has changed從rails 2.2到2.3.2,還有一些安全性,性能和錯誤修復。 ActiveScaffold與rails 2.3.2兼容,大部分插件都在那裏。如果你正在開始一個新項目,我會推薦使用最新和最好的。

使用Ruby 1.9有什麼好處?許多插件尚不兼容。它是否提供了比舊版本更好的 改進?

Ruby 1.9比Ruby 1.8.x快得多,但採用1.9並不是那麼高。 Rails 2.3.2在Ruby 1.9上工作得很好,但是有一些插件和寶石沒有。確保你閱讀關於該主題的this stackoverflow問題。

相關問題