将数组值赋给.env文件上的ENV var

时间:2015-08-27 13:48:25

标签: ruby-on-rails configuration environment-variables env

我需要在.env文件上设置一个字符串数组,但无法找到有关正确语法的信息。测试需要一段时间,所以我想节省一些时间。其中一些选项应该有效:

MY_ARRAY=[first_string, second_string]
MY_ARRAY=[first_string second_string]
MY_ARRAY=['first_string', 'second_string']

有人可以告诉我吗?

提前致谢。

1 个答案:

答案 0 :(得分:8)

据我所知,dotenv不允许设置除字符串(和多行字符串)之外的任何内容。解析器语法为:

LINE = /
  \A
  (?:export\s+)?    # optional export
  ([\w\.]+)         # key
  (?:\s*=\s*|:\s+?) # separator
  (                 # optional value begin
    '(?:\'|[^'])*'  #   single quoted value
    |               #   or
    "(?:\"|[^"])*"  #   double quoted value
    |               #   or
    [^#\n]+         #   unquoted value
  )?                # value end
  (?:\s*\#.*)?      # optional comment
  \z
/x

背后的原因是shell和OS支持设置其他types of env variables is spotty

您可以使用逗号或管道(|)等分隔符,并使用ENV['FOO'].split('|')拆分字符串。但也许你要做的事情应该用一个结合了ENV vars的初始化器来解决。