使用动态javascript进行Symfony2路由 - 或者 - 安装FOSJsRoutingBundle

时间:2012-10-30 11:18:22

标签: javascript symfony twig symfony-2.1

我正在尝试找到处理通过与Symfony2的AJAX调用生成的动态路由的最佳方法。

当进行新的调用时,我需要当前路径可用,以及一些传递到路径中的动态变量。

基本上this

一些答案​​建议将路线放入每个模板中的变量,例如

    <script type="text/javascript">
    var productPath = {{ path("acme_myBundle_default_product" , {"magazine" : "bobscheese" , "product" : "chedderfornoobs"}) }};
</script>

这里的问题是,路径依赖变量,在运行时不存在(即$ magazine和$ product)。

一个完美的解决方案似乎是FOSJsRoutingBundle,但安装似乎与最新的Symfony2不是最新的。

安装与git submodule add git://github.com/FriendsOfSymfony/FOSJsRoutingBundle.git vendor/bundles/FOS/JsRoutingBundle

运行良好

但是我认为ReadMe的其余部分已经过时了,之后它会给我一个空白的屏幕,日志中没有错误。

所以我的问题是,如何在Symfony2.1.3中安装FOSJsRoutingBundle,或者如何在Symfony2中最好地处理客户端生成的URL。

2 个答案:

答案 0 :(得分:0)

FOSJsRoutingBundle通常可以在我的环境中使用(2.1.3)。 路由出错了吗?

它设置好吗?

acme_myBundle_default_product:
    pattern:  // ...
    defaults: // ...
    options:
        expose: true

答案 1 :(得分:0)

我刚刚离开了

<script type="text/javascript">
    var basePath = 'http://www.mybaseurl.com';
</script>

路线。不那么令人满意,但在这种情况下为我工作。