在Symfony 2中创建菜单的最佳方法是什么

时间:2015-06-24 02:47:31

标签: symfony twig

我正在管理我的投资组合,而且我的菜单处于两难境地。我的投资组合的管理员端允许我更改一些常规信息,添加,修改或删除项目。因此,我的管理员的所有页面都有相同的菜单。菜单包含以下按钮:用于更改常规信息的按钮和用于添加新项目的按钮。如果数据库中有项目,则菜单中包含更多内容,选择包含项目名称和两个按钮以修改或删除项目。

起初,我为项目的所有内容制作了一个表单,另一个只是为了更改信息按钮,但在询问了一些问题之后,我经常被告知我为此做出任何形式并且只是制作链接应该没问题。

我喜欢这个想法,但是,如果我这样做,当我点击修改例子时,如何通过所选项目?

<a href="{{ path("modify_project") }}">

这是我目前的代码:

<ul>
    <li>
         <a href="{{ path("admin_projet_ajout") }}">Ajouter un projet</a> 
    </li>
</ul>
{% if projets | length > 0%}
    <select>
        {% for id,projet in projets %}
            <option value={{ id }}>{{ projet }}</option>
        {% endfor %}
    </select>
    <ul>
        <li>
             <a href="{{ path("admin_projet_modifier") }}">Modifier</a> 
        </li>
        <li>
             <a href="{{ path("admin_projet_supprimer") }}">Supprimer</a> 
        </li>
    </ul>
{% endif %}

如果有人有更好的想法,我会非常有兴趣听取它。

2 个答案:

答案 0 :(得分:0)

你有没看过这个:https://github.com/KnpLabs/KnpMenuBundle

对不起,你是对的,答案其实就是这个:

<a href="{{ path('modify_project', { 'id': entity.id }) }}">{{ entity.id }}</a>

Twig会明白这一点,没有其他事可做。

答案 1 :(得分:0)

在真正考虑之后,最好的方式是一个表单,因为你不能改变链接的href,除了javascript,我不想这样做。