我想从数据库中的表中检索Cities名称,并将它们作为选项放在“layout.html.twig”中定义的选择输入(组合框)中.我的所有观点都扩展了’layout.html.twig’,那么如何在每个页面中访问城市名称?
[解]
我找到了解决方案,使用“embedding controllers”
>首先,我创建了一个撤消所有城市名称的行动:
public function listCitiesAction(){ // retreiving cities $entities = $this->getDoctrine()->getRepository("MedAdBundle:City")->findAll(); return $this->render('MedAdBundle:Ville:list_cities.html.twig',array('entities' => $entities)); }
>此动作将list_cities.html.twig定义为:
<select class="form-control"> {% for entity in entities %} <option>{{ entity.name}}</option> {% endfor %} </select>
> finnaly我编辑我的layout.html.twig
<div> {{ render(controller('MedAdBundle:City:listCities'))}} </div>
通过这种方式,我可以在我的应用程序的每个页面中访问城市组合框;)