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_IT技术博客_编程技术问答 - 「Fatal编程技术网」

Elixir从列表中删除重复项

有人愿意提供一些替代解决方案来使用函数式编程和Elixir构造从列表(X)中删除重复值吗 X = [1,26,3,40,5,6,6,7] # the 6 being the duplicate 在我看来,解决这个问题的基本解决方案是迭代列表(X),然后添加到一个新的列表(Y),其中键不存在 谢谢你Enum。uniq做你想做的事,例如: iex(6)> Enum.uniq([1,26,3,40,5,6,6,7]) [1, 26, 3, 40, 5, 6, 7] 就如何实现它而言,您可以编

Elixir 透析器分析匿名功能吗?

在我学习长生不老药的过程中,我正在玩透析器,以便在我的功能上输入类型。在这方面,我注意到透析器似乎没有检查匿名函数的类型 在下面的示例中,我将一个匿名函数传递到all?函数中,该函数添加两个数字并返回一个数字(t::number->number)。因此,我不会像all?spec(t::any->boolean)中承诺的那样返回布尔值 透析器似乎不会报告此代码的任何错误或警告,如果透析器无法检查此类错误或我做错了什么,我会很好奇。这似乎是一个透析器错误。调用:列出。all/2(参数已交换)会产生正

Elixir中测试主管的最佳实践

我在谷歌上搜索了一段时间,却找不到关于这个主题的任何东西——要么是长生不老药是一种太年轻的语言,要么是我在用错误的术语搜索 我正在学习Jose Valim的Elixir门户教程(),并且正在为实践构建测试(我已经构建了所有的功能) 本教程的一部分是构建一个管理器,使Portal.Door模块具有容错性 我正在尝试使用以下代码测试容错性(例如,如果Portal.Door实例未正确关闭,主管将重新启动该实例) defmodule PortalTest do use ExUnit.Case, as

Elixir 使用插件phoenix对控制器响应进行后处理

如果内容类型为文本/普通,如何创建一个插头,例如将响应的正文转换为大写?在其他中间件中,您可以调用resp=next(conn,params),然后修改resp,但我在插件中没有看到这一点。您可以定义一个插件,使用并检查响应的内容类型标题(请注意,插件要求标题为小写)。一个简单的实现(无错误检查)是: defmodule Plug.UpperCaser do @behaviour Plug import Plug.Conn def init(opts), do: opts

Elixir 更新有许多与EXTO相关的模型,似乎是替换而不是更新

我有一个模型,Account,它有许多BFF。当我尝试更新父模型并传入子模型时,出现以下错误: ** (exit) an exception was raised: ** (RuntimeError) you are attempting to change relation :bffs of Phoenixgram.Account, but there is missing data. By default, if the parent model contains N childr

Elixir 是否可以通过管道对结构进行'put_in'调用?

给定一张地图,可以写下如下内容: mymap |> put_in([:foo, :bar], "hello") |> put_in([:attr1], "how are you") |> put_in([:attr2], "goodbye") 理想情况下,我可以对结构执行同样的操作: mystruct |> put_in(.foo.bar, "hello") |> put_in(.attr1, "how are you") |> put_in(.attr2,

Elixir 长生不老药中有身份功能吗?

是否已经定义了标识函数Elixir 比如: identity=fn a->a end@focused是否正确-1.10-dev添加了identity功能 旧答案: 没有预定义这样的函数(至少我知道)。它可以像您在问题中所做的那样简单地编写,或者更简洁地写为&(&1)函数。identity/1最近已添加到Elixir v1.10.0-dev中: 用法示例: Enum.map([1, 2, 3, 4], &Function.identity/1)

Elixir 使用bind_quoted语句获得意外结果

我试图理解宏中的bind_quoted,并具有以下宏模块: defmodule Debugger do defmacro log(expression) do if Application.get_env(:debugger, :log_level) == :debug do quote bind_quoted: [expression: expression] do IO.puts "=============" IO.inspect

Elixir 轨道和x27的等效外部设备;作为列表的角色?

对于Rails,有一个优秀的gem,它允许定义由位置整数字段排序的多个关联。有没有类似的Exto和Phoenix库,或者Exto本身是否实现了类似的功能?看起来有一个小的Exto扩展可以帮助: 尽管(至少是订单部分)这可以通过使用一些基本的外太空技术来轻松实现: web/models/invoice.ex defmodule MyApp.Invoice do use MyApp.Web, :model schema "invoices" do has_many :line_i

Elixir 简单字符串和整数管道在模板辅助对象中不起作用

我将此代码放在模板中(html.eex文件): String.replace(“px”和“”)|>Integer.parse>(*0.8)%> 其中@width是“125px” 我有两个错误: 1) 未为{125,“}实施协议Phoenix.HTML.Safe 2) “*”之前的语法错误 这是否意味着不可能在模板帮助器中使用这样的管道,或者我没有正确编写它?这里有几个问题 首先,管道的末尾不是对函数的调用: iex> 125 |> (*0.8) ** (SyntaxError) i

Elixir 看不懂;priv/post";:没有这样的文件或目录

我一直在尝试使用Phoenix构建博客,并使用exrm部署它。在开发过程中,一切都是无错误的,但是当我试图在控制台中打开它时,exrm版本会给我带来错误。我一直在关注这个 这是我在iex中得到的错误消息: [info] Application blog exited: Blog.start(:normal, []) returned an error: shutdown: failed to start child: Blog.Repo ** (EXIT) an exception wa

Elixir 为什么可以';我不能在凤凰城的priv/static中打开文件吗?

如果此文件存在并且可从我的Phoenix应用程序访问: https://localhost:4000/csvs/test3.csv?v=63637241208 i、 例如,如果我可以链接到应用程序并从中下载,为什么我不能使用File.open!(https://localhost:4000/csvs/test3.csv?v=63637241208)要阅读它吗 我得到的只是一个无法读取文件的错误,尽管它存在。发生了什么事?您是否将URL传递到File.open文件。打开接受文件路径,而不是URL

Elixir 如何通过特定查询获取“has_many”

我有一个与有很多关联的异位模型。我想在默认情况下用一些查询定义这个关联 像 我想获取未被删除的注释(已删除是MyApp.Comment架构的布尔字段,应等于false)。实现这一目标的途径是什么 我的尝试#1 我试着去做 has_many :comments, Ecto.Query.from(c in MyApp.Comment, where: v.deleted == false) 但是我有 (ArgumentError) association queryable must be a sc

Elixir 在同一eex模板中显示来自两个架构的相关数据

我试图以一种形式显示一些相关数据。我有一个学生模式 schema "students" do field :firstname, :string field :lastname, :string field :birthday, Ecto.Date field :joined_on, Ecto.Date field :gender, :string timestamps() end 每个学生都可以有一个母亲和一个父亲,我将他们指定为父母,并创建了一个单独的模式和单独的表

为什么在Elixir 1.4.2中使用捕获操作符调用代理更新?

因此,我理解此上下文中的捕获运算符: sum_it = &(&1 + 2) sum_it.(1) # result is 3 但我在这里不明白: # stores "Peter" where pid = #PID<0.82.0> Agent.update(pid, &["Peter" | &1]) #存储“Peter”,其中pid=#pid Agent.update(pid,&[“Peter”|&1]) 看起来它把列表变成了一个匿名函数?而“&1

Elixir 如何运行依赖项的EXTO迁移?

我正在构建一个项目,它将作为多个其他项目的核心,有点像ruby world中的Rails引擎 我已经在我的核心项目中实现了一些基本的数据库结构,基本上是全面共享的结构 我的问题是,使用我的核心的项目没有注册核心项目的迁移 有什么方法可以运行核心依赖项的迁移吗 如果您需要更多信息,请告诉我。:-) 谢谢您应该能够在自定义任务中使用exto.Migrator模块。 有关更详细的说明,请参阅 defmodule Release.Tasks do def migrate do {:ok, _

找不到Elixir-模块GenServer.behavior

我收到错误,模块GenServer。行为未加载,无法找到 对于以下脚本: defmodule FridgeServer do use GenServer.Behaviour def init(items) do {:ok, items} end def handle_call({:store, item}, _from, items) do {:reply, :ok, [item | items]} end end 我正在学习关于OTP的教程,并在运行测

Elixir 如何在0.0.0.0上发布牛仔?

我正在使用Exrm部署我的Phoenix应用程序。我已将我的应用程序配置为绑定到我的config/prod.exs中的0.0.0: config :apiServer, ApiServer.Endpoint, http: [ip: {0, 0, 0, 0}, port: 4000], url: [host: "sitenamehere.co", port: 4000], cache_static_manifest: "priv/static/manifest.json", roo

Elixir 当依赖项不存在时,如何将包发布到hex?

我的包依赖于当前仅在github上的包。我试图将包向下拉到我自己的供应商文件夹中,因此我的依赖项部分如下所示: defp deps(:prod) do [ {:ex_doc, "~> 0.16.2"}, {:finder, path: "vendor/Finder" }, {:erlware_commons, "~> 1.0"}, {:pattern_tap, path: "vendor/elixir-pattern-tap"},

Elixir 自定义异常和类型规范

在elixir中,您可以定义如下自定义异常: defmodule AppWeb.CustomError do defexception message: "some custom server error", plug_status: 500 end 但这不再是一种长生不老药了 因此,如果将其与定义了此类类型规范的第三方库一起使用: @spec capture_exception(Exception.t, Keyword.t) :: task def capture_excepti

在Elixir中动态扩展列表

我在列表理解中动态创建映射,然后尝试在每次迭代中将生成的映射附加到列表中 下面是一个代码: result = [] temp_map = %{} for n <- 1..number do temp_map = Map.put_new(temp_map, :title, Enum.at(titles, n)) temp_map = Map.put_new(temp_map, :content, Enum.at(contents, n)) result = res

如何使用elixir flow批量处理事件

我有一个csv_文件,其中 a、 )首先,需要将每行转换为xml和 b、 )其次,转换后的xml将被发送到rails端进行一些数据库写入操作 下面是我的流程代码 flow = csv_rows |> Flow.from_enumerable() |> Flow.partition |> Flow.map(&(CSV.generate_xml(&1))) |> Flow.map(&(CSV.save_to_rails_databse(&

Elixir EXTO put_assoc变更集正确,但Repo.update给出StaleEntryError异常

我正在尝试更新mysql表中的一些数据。我正在使用EXTO执行数据库操作 用户表与ItemsPurchased有关联,有许多关联,所属的如下所示: schema "sales_orders" do field(:total_bill, :float) field(:quantity, :integer) field :sales_order_id, :integer has_many :items_purchased, Orders.ItemsPurchased

Elixir 生产中未定义Poison.decode/2

elixir 1.9中的My函数解码来自外部api的json响应,如下所示: def decode({ok, body, "application/json"}) when is_binary(body) do body |> Poison.decode(keys: :atoms) |> case do {:ok, parsed} -> {ok, parsed} _ -> {:error, body} end

具有函数头和默认值的Elixir装饰器

我遇到了一个问题,我需要将匹配案例添加到一个同时具有装饰器和默认值的函数中: @decorate print() def foo(a, b \\ "b") ... 使用Decorators包中的一个示例,此示例会发出警告: defmodule PrintDecorator do use Decorator.Define, [print: 0] def print(body, context) do quote do IO.puts("Function called

Elixir 创建与变更集无关的记录

我正在为远程API创建一个本地db模式,我遇到了一些问题 # CatalogObject schema "catalog_objects" do field :type, :string has_one :item_data, ItemData, foreign_key: :catalog_object_id has_one :item_variation_data, ItemVariationData, foreign_key: :catalog_object_id end #

上一页 1 2 ...  84   85   86   87    88   89   90  ... 下一页 最后一页 共 125 页