Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.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
Symfony egeloen/google地图只加载一个地图_Symfony - Fatal编程技术网

Symfony egeloen/google地图只加载一个地图

Symfony egeloen/google地图只加载一个地图,symfony,Symfony,我正在使用egeloen/ivory谷歌地图库为每个注册用户显示地图。但在所有用户列表中,只显示一个地图 这是我的方法: public function findCompaniesAction() { $em = $this->getDoctrine()->getManager(); $companies = $em->createQueryBuilder() ->select('b') ->from('RFQIronilBundle:User',

我正在使用egeloen/ivory谷歌地图库为每个注册用户显示地图。但在所有用户列表中,只显示一个地图

这是我的方法:

public function findCompaniesAction() {
$em = $this->getDoctrine()->getManager();

$companies = $em->createQueryBuilder()
    ->select('b')
    ->from('RFQIronilBundle:User',  'b')
    ->where('b.acc_type = 1')
    ->getQuery()
    ->getResult();

foreach ($companies as $key => $company) {
    $map = $this->get('ivory_google_map.map');
    $map->setMapOption('mapTypeId', MapTypeId::ROADMAP);
    $map->setMapOption('mapTypeId', 'roadmap');
    $company->map = $map;
}

return $this->render('RFQIronilBundle:Default:find-companies.html.twig', array(
    'companies'     => $companies
));
}
在我看来,我使用:

{% for companies in companies %}
    {{ google_map_container(companies.map) }}
    {{ google_map_js(companies.map) }}
{% endfor %}

一切正常,但地图只为第一个用户显示。我错过了什么?

尝试为每个地图提供一个唯一的容器id。我使用以下方法:

$map->setHtmlContainerId('map_canvas_'.md5($address));
其中$address是一个简单的地址字符串