我无法将Bootstrap安装到Symfony2

时间:2013-05-23 02:47:20

标签: php symfony twitter-bootstrap

我正在尝试将bootstrap安装到我的symfony2项目中。 我基本上遵循了以下步骤:http://bootstrap.braincrafted.com/getting-started

但是,当我尝试使用以下命令运行我的服务器时:php app\console server:run 我收到了这个错误:

  

[InvalidArgumentException]   文件“filters / assets.xml”不存在(在:C:.. \ ProjectName \ vendor \ symfony \ assetic-bundle \ Symfony \ Bundle \ AsseticBundle \ DependencyInjection / .. Resources / config)。

我已经去了那个文件夹,找不到assets.xml文件。

我很确定我的config.yml文件出了问题。这是资产配置

  

assetic:     java:/ usr / bin / java     过滤器:       cssembed:         jar:%kernel.root_dir%/ Resources / java / cssembed-0.4.5.jar       yui_js:         jar:%kernel.root_dir%/ Resources / java / yuicompressor.jar       lessphp:         文件:%kernel.root_dir%/ .. / vendor / leafo / lessphp / lessc.inc.php         apply_to:“。$”     资产:       jquery_js:           输入:                - '%kernel.root_dir%/ app / Resources / public / js / vendor / jquery.js'           过滤器:[?yui_js]       bootstrap_js:           输入:                - '%kernel.root_dir%/ .. / vendor / twitter / bootstrap / js / bootstrap-transition.js'                - '%kernel.root_dir%/ .. / vendor / twitter / bootstrap / js / bootstrap-alert.js'                - '%kernel.root_dir%/ .. / vendor / twitter / bootstrap / js / bootstrap-modal.js'                - '%kernel.root_dir%/ .. / vendor / twitter / bootstrap / js / bootstrap-dropdown.js'                - '%kernel.root_dir%/ .. / vendor / twitter / bootstrap / js / bootstrap-scrollspy.js'                - '%kernel.root_dir%/ .. / vendor / twitter / bootstrap / js / bootstrap-tab.js'                - '%kernel.root_dir%/ .. / vendor / twitter / bootstrap / js / bootstrap-tooltip.js'                - '%kernel.root_dir%/ .. / vendor / twitter / bootstrap / js / bootstrap-popover.js'                - '%kernel.root_dir%/ .. / vendor / twitter / bootstrap / js / bootstrap-button.js'                - '%kernel.root_dir%/ .. / vendor / twitter / bootstrap / js / bootstrap-collapse.js'                - '%kernel.root_dir%/ .. / vendor / twitter / bootstrap / js / bootstrap-carousel.js'                - '%kernel.root_dir%/ .. / vendor / twitter / bootstrap / js / bootstrap-typeahead.js'                - '%kernel.root_dir%/ .. / vendor / twitter / bootstrap / js / bootstrap-affix.js'           过滤器:[?yui_js]       bootstrap_less:           输入:                - '%kernel.root_dir%/ .. / vendor / twitter / bootstrap / less / bootstrap.less'           过滤器:[lessphp,cssembed]

任何人都可以帮助我吗?

2 个答案:

答案 0 :(得分:1)

我刚刚完成了这一点,发现这个捆绑包比试图直接安装它更有帮助...

https://github.com/phiamo/MopaBootstrapBundle

它的文档可能有点模糊,但整体而言它运作得相当好。我在SASS中使用它,但它也有简单的CSS选项。

答案 1 :(得分:1)

正如我所看到的,您已将 lessphp 配置为资产过滤器之一,而不是更少(因为您在Windows上并且没有正确配置)。将config.yml更改为实际使用lessphp而不是less命令

# app/config/config.yml

assetic:
    # ...
    assets:
        bootstrap_css:
            inputs:
                - %kernel.root_dir%/../vendor/twitter/bootstrap/less/bootstrap.less
                - %kernel.root_dir%/../vendor/twitter/bootstrap/less/responsive.less
            filters:
                - lessphp             # change this form less to lessphp

此外,您的路径可能存在问题,查看错误:

C:..\ProjectName\vendor\symfony\asseticbundle\Symfony\Bundle\AsseticBundle\DependencyInjection/..Resources/config

...应该是一个有效的路径......

C:\ProjectName\vendor\symfony\assetic-bundle\Symfony\Bundle\AsseticBundle\DependencyInjection/../Resources/config

...为symfony / php实际上能够找到filters / assets.xml。