Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何为每个操作系统设置database.yml条件?_Ruby On Rails_Ruby_Database_Yaml - Fatal编程技术网

Ruby on rails 如何为每个操作系统设置database.yml条件?

Ruby on rails 如何为每个操作系统设置database.yml条件?,ruby-on-rails,ruby,database,yaml,Ruby On Rails,Ruby,Database,Yaml,我想在Linux和Windows中设置sprocket。都在我的database.yml中,如何 现在: 我想要像这样的东西: development: adapter: mysql2 encoding: utf8 database: skeletor_dev pool: 25 username: root password: socket: /private/var/mysql/mysql.sock if os => windows socket: /p

我想在Linux和Windows中设置sprocket。都在我的database.yml中,如何

现在:

我想要像这样的东西:

development:
  adapter: mysql2
  encoding: utf8
  database: skeletor_dev
  pool: 25
  username: root
  password: 
  socket: /private/var/mysql/mysql.sock if os => windows
  socket: /private/var/mysql/mysql.sock if os => linux
可能吗?如何?

使用ERB

development:
  socket: <%= %w[windows linux].include?(ruby_code_to_get_os) ? '/path/to/sock' : nil %>
开发:
插座:

显然,你必须弄清楚如何最好地确定平台本身,但这应该会让你走得更远。

你可以做多种环境,比如
development\u windows:
development\u linux
并按照wise
rake db:migrate RAILS\u ENV=development\u windows
定义套接字这不是我想要的。。。
development:
  socket: <%= %w[windows linux].include?(ruby_code_to_get_os) ? '/path/to/sock' : nil %>