22

我今天刚刚在 SO 上遇到了 Twitter Bootstrap。我浏览了一些在线教程,如果到目前为止我的理解是正确的,那么使用 TB 基本上包括:

  1. 下载 TB,提取 CSS 文件等
  2. 在您的 HTML 文档中引用所需的 CSS、JS 文件并使用定义的 CSS 模式

我想将 Twitter Bootstrap 与 Symfony2 一起使用。鉴于我对如何使用 TB 的理解,我认为将它与 Symfony 一起使用会相对容易,所以我很惊讶地看到有(实际上有几个)Bundles 可以与 Symfony 一起使用。

所以我的问题是:

  1. 为什么需要 Bundle 才能将 Twitter Bootstrap 与 Symfony2 一起使用?- 我上面解释的方法会不起作用(即直接在树枝模板中添加引用)吗?

  2. 由于有几个 Twitter Bootstrap Bundles 可用(最后计数有 3 个),这是最容易使用的(它必须是最近提交积极支持的一个,而不是一个死项目)

4

4 回答 4

33

我很确定这些捆绑包很棒,但它们各有优缺点。你也可以直接在你的项目中使用没有 Bundle 的 TB。这就是我个人所做的,这样:

  • git clone TB in web/(获取最新更新并保持更新)
  • 我使用 Assetic 和 less 过滤器直接在我的树枝模板中调用 bootstrap.less。这样,我可以创建自己的 .less 文件,例如 @imports TB 并使用他们惊人的 mixin。

这种方式真的很强大。再加上 yui-compressor,当我在无调试模式下使用 Assetic 时,我所有的 js 和 less 文件都被编译成一个 .css 输出和一个 .js 输出。您可以从所有 TB 功能中受益,使用 .less,而不是 .css

于 2012-08-14T13:23:25.823 回答
7

有 2 个主要的包提供 symfony 与 Twitter Bootstrap 的集成:

在我看来:

MopaBootstrapBundle更复杂,提供自己的布局结构(因为你也可以创建自己的)和许多定义的功能、额外的资产、表单和其他集成

BcBootstrapBundle更简单,更清晰,您使用自己的布局结构,并且有很多定义的功能,额外的资产,表单和其他集成

不要使用任何 intergtaion 捆绑包也是一种选择,但你会松散与表单、资产、更少等的集成(正如@Acyra 在他的评论中提到的那样)

我更喜欢使用具有额外集成功能的 BcBootstrapBundle 并使用我自己的自定义布局结构。

于 2013-06-21T08:01:40.007 回答
3

您可以使用 Twitter Boostrap (TB) 仅将 css 添加到您的项目中。然后,你就有了一个起点,可以做一些比从头开始更直观的事情。正如你在第一部分中描述的那样。

但是,您还可以从处理与 TB 的模板集成的 Bundle 中检索更多有趣的东西。例如:

例如,使用 symfony 1.4(我知道这篇文章谈论的是 sf2),你有一个插件可以向管理生成器添加一个新主题,以实现一个很好的 TB 集成,而不是默认的。我知道 sf2 中没有官方的管理生成器,但它可以用于 CRUD。

自 symfony 1.0 以来,另一件事是正确的,并不是所有的包都很好地实现、开发、维护、测试、记录等。(除了来自核心团队的那些(FOS* Bundle、Doctrine、Propel 等..) )。所以我建议你对它们都进行测试,看看其中一个是否符合你的需要,否则会受到启发来改进它们(它们几乎都在 github 上)或构建你自己的。

顺便说一句,有很多 Bundle ..

于 2012-08-14T13:37:49.723 回答
1

Symfony 和 Bootstrap 的更新: Symfony 的文档细节似乎总是有点落后,所以这里是 Symfony 的更新。2.6 及更高版本现在包括与 Twitter Bootstrap 的基本集成。

http://symfony.com/blog/new-in-symfony-2-6-bootstrap-form-theme

希望这可以节省一些人的时间,并且可以按照他们在上面的 Symfony 文档中解释的那样让它工作!

于 2015-06-21T17:18:15.400 回答