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

nto*_*ier 10 configuration env ruby-on-rails environment-variables

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

MY_ARRAY=[first_string, second_string]
MY_ARRAY=[first_string second_string]
MY_ARRAY=['first_string', 'second_string']
Run Code Online (Sandbox Code Playgroud)

有人可以告诉我吗?

提前致谢.

max*_*max 11

据我所知,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
Run Code Online (Sandbox Code Playgroud)

这背后的原因是shell和OS支持设置其他类型的env变量是不稳定的.

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