繁体   English   中英

Circumflex标志/ Pin / Cap操作员(^)在Elixir中做了什么?

[英]What does the Circumflex sign/Pin/Cap operator (^) do in Elixir?

我正在浏览Ecto文档,当我到达插值部分时,Ecto使用Circumflex(^)符号,就像这样。

def with_minimum(age, height_ft) do
    from u in User,
  where: u.age > ^age and u.height > ^(height_ft * 3.28)
end

让我想知道,它做了什么? :-)

在Elixir中,引脚运算符用于模式匹配以匹配变量的当前值。 您可以在这里阅读更多相关信息: http//elixir-lang.org/getting-started/pattern-matching.html

Ecto将pin运算符更改为表示将Elixir值传递给查询的查询插值。 你可以说他们的行为有点类似,因为数据库有效地运行查询试图找到匹配的值,但最简单的方法是将其视为查询插值。 更多信息: http//hexdocs.pm/ecto/Ecto.Query.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM