小编Rod*_*rik的帖子

使用Twig获取动态Javascript文件

我正在开发一种仪表板迷你站点,它具有一定功能的块.使用symfony2我有一个专用的路线/ Instagram,它获得一个html片段,显示我们场地拍摄的所有图像.

我想每10分钟刷新一次这个块,所以我需要在带有setTimeout的函数中运行以下javascript,为清楚起见省略.

jQuery('.gallery').load("/instagram", function() {
    jQuery('.gallery').cycle({
        fx: 'fade'
    });
});
Run Code Online (Sandbox Code Playgroud)

此代码位于"@ KunstmaanDashboardBundle/Resources/public/js/instagram.js"中,我通过Assetic进行连接和优化.

{% javascripts
    '@KunstmaanDashboardBundle/Resources/public/js/thirdparty/jquery-1.7.min.js'
    '@KunstmaanDashboardBundle/Resources/public/js/thirdparty/jquery.cycle.lite.js'
    '@KunstmaanDashboardBundle/Resources/public/js/*'
    filter='closure'
%}
    <script src="{{ asset_url }}"></script>
{% endjavascripts %}
Run Code Online (Sandbox Code Playgroud)

这是有效的,但我不认为这是一种最佳方法,因为我必须在load()函数中硬编码路由.要解决此问题,我需要将instagram.js内容移动到Twig模板并将其更改为:

jQuery('.gallery').load("{{ path('KunstmaanDashboardBundle_instagram') }}", function() {
    jQuery('.gallery').cycle({
        fx: 'fade'
    });
});
Run Code Online (Sandbox Code Playgroud)

但是这样我就失去了优化和分离Assetic的内容优势.我们的自定义代码最需要这种优化.

所以我的问题是,如何将Assetic Javascript(和css)与Twig解析器结合起来,这样我就可以将上面的代码放在instagram.js文件中并使其工作:)

javascript symfony twig assetic

7
推荐指数
1
解决办法
2万
查看次数

Composer,最小稳定性和依赖关系的依赖关系

我对使用composer的新项目和Symfony 2依赖项非常感兴趣.

首先,我使用composer安装symfony/framework-standard-edition v2.1.5.这会产生一个具有这些要求且没有最小稳定性节点的composer文件.

"require": {
  "php": ">=5.3.3",
  "symfony/symfony": "2.1.*",
  "doctrine/orm": ">=2.2.3,<2.4-dev",
  "doctrine/doctrine-bundle": "1.0.*",
  "twig/extensions": "1.0.*@dev",
  "symfony/assetic-bundle": "2.1.*",
  "symfony/swiftmailer-bundle": "2.1.*",
  "symfony/monolog-bundle": "2.1.*",
  "sensio/distribution-bundle": "2.1.*",
  "sensio/framework-extra-bundle": "2.1.*",
  "sensio/generator-bundle": "2.1.*",
  "jms/security-extra-bundle": "1.2.*",
  "jms/di-extra-bundle": "1.1.*",
  "kriswallsmith/assetic": "1.1.*@dev"
},
Run Code Online (Sandbox Code Playgroud)

这工作正常,它安装所有最新的稳定版本,就像它应该的那样.

接下来,我添加一个包 - > https://packagist.org/packages/kunstmaan/admin-bundle

"require": {
  "php": ">=5.3.3",
  "symfony/symfony": "2.1.*",
  "doctrine/orm": ">=2.2.3,<2.4-dev",
  "doctrine/doctrine-bundle": "1.0.*",
  "twig/extensions": "1.0.*@dev",
  "symfony/assetic-bundle": "2.1.*",
  "symfony/swiftmailer-bundle": "2.1.*",
  "symfony/monolog-bundle": "2.1.*",
  "sensio/distribution-bundle": "2.1.*",
  "sensio/framework-extra-bundle": "2.1.*",
  "sensio/generator-bundle": "2.1.*",
  "jms/security-extra-bundle": "1.2.*",
  "jms/di-extra-bundle": "1.1.*",
  "kriswallsmith/assetic": "1.1.*@dev",
  "kunstmaan/admin-bundle": "dev-master"
},
Run Code Online (Sandbox Code Playgroud)

这个包依赖于"dev-master"中的"doctrine/doctrine-fixtures-bundle"(https://packagist.org/packages/doctrine/doctrine-fixtures-bundle)

并且该捆绑包依赖于带有*的学说/数据夹具(https://packagist.org/packages/doctrine/data-fixtures)

现在当我在项目中运行composer …

dependency-management symfony composer-php

7
推荐指数
1
解决办法
4654
查看次数

使用基于Symfony 2的网站处理生产中的PHP错误

我们正在生产几个symfony2网站,我们正在使用Airbrake和Sentry来收集异常.真正的异常即使在生产中也能很好地工作,我们可以用很多上下文记录它们,我们可以向用户显示一个不错的500错误页面.

PHP错误是另一回事.我可以使用"on shutdown"处理程序将它们记录到Sentry,但是使用它我不能传递很多上下文.对于用户,也只有空503错误.这很糟糕,因为如果出现问题,我们无法向用户显示"下一步".

来自Java背景我很喜欢"真正的"异常,并且在开发模式中有一个类可以在异常中转换大量错误,但是没有记录或显而易见的方法在生产中启用它,所以我想也许我不应该'在询问更多之前;)

你是如何处理这个问题的,它会带来什么样的性能损失?

这是一个来自以下网址的链接:http://groups.google.com/group/symfony2/browse_thread/thread/6129f57a35d8cb90?hl = zh-CN

php hosting exception-handling symfony

4
推荐指数
1
解决办法
8727
查看次数