Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.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,我有一个来自第三方库的函数,它从数据库返回数据: cars = get_all_cars #third-party function 在内部,它执行类似于Repo.all(从车中的c)。我想预加载与模型车相关的2个模型。我能做到 `Repo.all(from c in Car, preload: [:driver, :driver_to_car])` 但是我没有访问权限,也不想更改get\u all\u cars的源代码。那我怎么做呢 请注意,汽车和驾驶员之间存在多对多关系。您可以将结构或

我有一个来自第三方库的函数,它从数据库返回数据:

cars = get_all_cars #third-party function 
在内部,它执行类似于
Repo.all(从车中的c)
。我想预加载与模型车相关的2个模型。我能做到

`Repo.all(from c in Car, preload: [:driver, :driver_to_car])`
但是我没有访问权限,也不想更改
get\u all\u cars
的源代码。那我怎么做呢


请注意,汽车和驾驶员之间存在多对多关系。

您可以将结构或结构列表传递给
Repo.preload/3

cars = get_all_cars |> Repo.preload([:driver, :driver_to_car])

这与示例代码的功能相同。

您可以将结构或结构列表传递给
Repo.preload/3

cars = get_all_cars |> Repo.preload([:driver, :driver_to_car])

这与您的示例代码的功能相同。

如何从单个
汽车访问
驾驶员到车辆
模型
?与您使用
Repo.all(从车中的c,预加载:[驾驶员,:驾驶员到车辆])的方法相同。
。那代码不起作用了吗?在这种情况下,您能在问题中包括所有3个模型的模型模式吗?我的意思是,访问或引用,而不是检索。上面的代码已经检索到它。只要
car。如果是关联名称,则driver\u to\u car
应该可以工作。您还可以通过检查返回值来查看字段名称。如何从单个
汽车访问
驾驶员到车辆
模型?与您使用
Repo.all(从车中的c,预加载:[:驾驶员,:驾驶员到车辆]的方法相同。
。那代码不起作用了吗?在这种情况下,您能在问题中包括所有3个模型的模型模式吗?我的意思是,访问或引用,而不是检索。上面的代码已经检索到它。只要
car。如果是关联名称,则driver\u to\u car
应该可以工作。您还可以通过检查返回值来查看字段名。