如果我像这样运行一个rails控制台
library(dplyr)
a <- data.frame(a=(1:4), row.names=c("C12","CC12", "C1","12"))
tbl_df(cbind(a=a, b=rownames(a)))%>%
filter(grepl("^C12", b))
并运行一些代码
Rails_env=uat
代码执行的地方,是服务器上的代码,还是我的本地代码,可能会有所不同?
答案 0 :(得分:2)
它在shell运行的机器上执行。
RAILS_ENV
env var的作用是告诉rails要加载哪些配置文件。因此,如果您使用RAILS_ENV = production
,则会加载/config/environments/production.rb
,并且还会使用production
中的database.yml
部分。
它不会神奇地打开SSH连接并在您的生产服务器上执行。试想一下,它会如何运作? Rails不知道生产服务器在哪里以及如何打开连接。
但是,由于它使用production
中的database.yml
部分,如果您愚蠢到实际在文件中编写生产服务器详细信息,它可以更改您的生产数据库(不要成为工具,使用DATABASE_URL env var)。