Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.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
Elixir:Date.to_字符串为美国的服务器和英国的本地服务器返回不同的格式_Elixir_Phoenix Framework - Fatal编程技术网

Elixir:Date.to_字符串为美国的服务器和英国的本地服务器返回不同的格式

Elixir:Date.to_字符串为美国的服务器和英国的本地服务器返回不同的格式,elixir,phoenix-framework,Elixir,Phoenix Framework,我了解api日期。to_字符串根据其日历将给定日期转换为字符串,因此我得到美国托管服务器的格式“8/22/18”,以及英国本地服务器的格式“2018-07-30” 是否有办法从日历中检索格式?如果您同意始终以ISO 8601格式打印,则可以使用。如果没有,我建议您使用该库(具体请参见): 通过深入研究源代码,我发现Date.to_字符串(~D[2018-07-30])将始终返回字符串“2018-07-30”,无论您从哪个国家运行它 如果您查看Date.to_string的来源(通过以下方式: (

我了解api日期。to_字符串根据其日历将给定日期转换为字符串,因此我得到美国托管服务器的格式“8/22/18”,以及英国本地服务器的格式“2018-07-30”


是否有办法从日历中检索格式?

如果您同意始终以ISO 8601格式打印,则可以使用。如果没有,我建议您使用该库(具体请参见):


通过深入研究源代码,我发现
Date.to_字符串(~D[2018-07-30])
将始终返回字符串
“2018-07-30”
,无论您从哪个国家运行它

如果您查看
Date.to_string
的来源(通过以下方式: (然后)

我们发现函数只返回:

"#{year}-#{month}-#{day}"

Elixir core中只有一个日历实现。您是在定义一个不同的日历,还是在使用定义日历的第三方软件包?@Dogbert我没有使用任何使用不同日历的第三方软件包。@Dogbert我可以借用您在这方面的专业知识,检查我的答案是否正确吗?thanks@SamHouston是的,那正是我发现的。唯一可能发生这种情况的方法是,如果另一个日期结构使用的是不同的
日历实例
。ISO日历(默认设置)的格式应始终为
YYYY-MM-DD
。这是我作为修复程序的一部分所做的,但问题是遗留数据。我需要将以前的数据迁移到此格式,该格式需要识别现有时间format@DigvijayUpadhyay请用输入示例和预期输出扩展您的问题
"#{year}-#{month}-#{day}"