2011-04-10 88 views

回答

13

如果你的意思是如何告訴軌,其環境加載,當您啓動命令行服務器,方法如下:

rails server -e production 
+1

也可以。雖然使用shell變量的好處是,它可以與'-e'不能使用的某些類型的命令一起使用。 – 2011-04-10 05:39:41

+0

我更喜歡這種方法來設置RAILS_ENV,因爲我傾向於忘記我已將env設置爲生產。無論如何,大多數時候我都想要在開發中運行。 – Dty 2011-04-10 08:36:19

+0

我遇到的問題是主要的愚蠢;我正在使用RAILS_ENV,並希望僅在開發環境中打印一些文本。而是寫'如果RAILS_ENV =='開發''我寫'如果RAILS_ENV =「開發」並且實際上已經導致生產環境作爲開發運行!我是個笨蛋。感謝您的幫助。 – xiatica 2011-04-12 02:04:39

8

一般來說,Rails的在啓動時從RAILS_ENV shell變量獲取其環境,或者默認爲「開發」。可以指定的環境中,一個軌道命令如rails serverrails console(導軌3),script/serverscript/console(Rails的2.X)從bash命令行如下...

RAILS_ENV=something rails s 

這意味着設置RAILS_ENV環境變量爲執行rails s命令的「某些東西」。

相關問題