現在Rails 3 beta已經不存在了,我想我應該看看重寫一個我剛剛開始在Rails 3 beta中工作的應用程序,以便獲得它的感覺並獲得一點的領先。該應用程序使用MongoDB和MongoMapper爲其所有模型,因此不需要ActiveRecord。在以前的版本中,我卸載的ActiveRecord以下列方式:在Rails 3中刪除ActiveRecord 3
config.frameworks -= [ :active_record ] # inside environment.rb
在最新版本中,這並不工作 - 它只是拋出一個錯誤:
/Library/Ruby/Gems/1.8/gems/railties-3.0.0.beta/lib/rails/configuration.rb:126:in
`frameworks': config.frameworks in no longer supported. See the generated
config/boot.rb for steps on how to limit the frameworks that will be loaded
(RuntimeError)
from *snip*
當然,我已經看過正如它所建議的boot.rb,但據我所知,這裏沒有關於如何去卸載AR的線索。我需要這樣做的原因是因爲加載我不想要的東西不僅是愚蠢的,而且它抱怨說即使在我嘗試爲控制器運行生成器時也無法建立數據庫連接。這是因爲我已經擦除了database.yml
並用MongoDB的連接細節替換它,以便使用this gist來爲database.yml使用MongoDB連接詳細信息。不知道爲什麼它需要能夠發起一個數據庫連接,只是爲了生成一個控制器呢......
是否有人知道正確的Rails 3做到這一點?
是啊,這似乎已經做到了。看起來-O選項也可以被調用爲'--skip-activerecord'。我使用此選項爲其他(臨時)應用程序運行rails命令,並生成了與上面所寫的完全匹配的新應用程序模板。所以我可以將這些更改複製並粘貼到我的實際應用程序中。謝謝 - 很好找到:) – 2010-02-06 11:36:52
非常好 - 感謝--skip-activerecord。這正是我需要的。 – Finglas 2010-11-09 13:34:40
大部分工作,除了當我運行rails生成 - 我仍然看到ActiveRecord的東西 - 如何刪除它? – Hackeron 2011-01-11 19:52:26