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 长生不老药/凤凰二元原子_Elixir_Phoenix Framework - Fatal编程技术网

Elixir 长生不老药/凤凰二元原子

Elixir 长生不老药/凤凰二元原子,elixir,phoenix-framework,Elixir,Phoenix Framework,我有一张表格 如果我只使用英语,它会非常好用。但中文,或任何其他返回错误 ** (ArgumentError) argument error :erlang.binary_to_atom("刺繡等等我", :utf8) (elixir) src/elixir_parser.yrl:512: :elixir_parser.yeccpars2_93/7 我相信这与编码有关。如何将字符串转换为可接受的格式 提前谢谢 自当前版本的Erlang(19)起,Atoms不能包含255以上的代码点 二元到二

我有一张表格

如果我只使用英语,它会非常好用。但中文,或任何其他返回错误

** (ArgumentError) argument error
:erlang.binary_to_atom("刺繡等等我", :utf8)
(elixir) src/elixir_parser.yrl:512: :elixir_parser.yeccpars2_93/7
我相信这与编码有关。如何将字符串转换为可接受的格式


提前谢谢

自当前版本的Erlang(19)起,Atoms不能包含255以上的代码点

二元到二元原子(二元,utf8)

如果二进制文件包含大于255的Unicode代码点,则失败。在未来的版本中,这样的Unicode字符是允许的,并且二进制到原子(二进制,utf8)不会失败

[”刺繡等等我": "2“]
语法相当于
[{:erlang.binary\u to\u atom(“刺繡等等我"), "2“}]
即,它将所有键转换为原子,并且您使用的文本包含255个以上的码点

由于
select
支持生成两个项元组的任何可枚举项,因此可以使用较长的符号构造字符串的两个元素元组列表:

 <%= select f, :user_id, [{"刺繡等等我", "2"}, {"wow", "3"}] %>

谢谢@Dogbert的回答!我现在来看看源代码。