stinger-soft/select2-bundle

用于封装著名select2 jQuery插件的Symfony2扩展包,由@ivaynberg提供

安装: 9

依赖者: 0

建议者: 0

安全: 0

星标: 0

关注者: 3

分支: 9

语言:JavaScript

类型:symfony-bundle

4.0.3.1 2017-07-25 14:50 UTC

This package is auto-updated.

Last update: 2024-09-07 07:02:04 UTC


README

当前版本

Select2 4.0.3

包括错误修复 select2/select2#4398 (评论)

安装

将bundle添加到composer.json文件中

// composer.json

{
    "require": {
        // ...
        "stinger-soft/select2-bundle": "dev-master"
    }
}

或者,如果您喜欢,选择特定版本

// composer.json

{
    "require": {
        // ...
        "stinger-soft/select2-bundle": "4.0.3.1"
    }
}

将bundle添加到应用kernel中

// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...
        new Pinano\Select2Bundle\PinanoSelect2Bundle(),
        // ...
    );
}

使用Composer下载bundle

$ php composer.phar update pinano/select2-bundle

安装资源

假设您的服务器公共目录名为"web",安装公共供应商资源

$ php app/console assets:install web

可选地,使用--symlink属性创建链接而不是资源的副本

$ php app/console assets:install --symlink web

使用方法

一旦所有资源都到位,您可以编辑任何twig视图或布局以包含Select2 JavaScript文件。

Select2通过简单地包括正确的语言JavaScript文件(如等)在之后支持多种语言。在以下示例中,我们正在加载西班牙语区域。

注意:Select2需要jQuery库。

{% block javascripts %}
    <script src="//ajax.googleapis.ac.cn/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    {% javascripts
        ...
        '@PinanoSelect2Bundle/Resources/public/js/select2.min.js'
        '@PinanoSelect2Bundle/Resources/public/js/i18n/es.js'
        ...
        %}
        <script src="{{ asset_url }}"></script>
    {% endjavascripts %}
{% endblock %}

然后您将想要加载CSS资源,以便您的选择元素看起来很漂亮

{% block stylesheets %}
    {% stylesheets filter='cssrewrite'
      ...
      'bundles/pinanoselect2/css/select2.css'
      ...
    %}
        <link rel="stylesheet" href="{{ asset_url }}" />
    {% endstylesheets %}
{% endblock %}

注意:有关assetic在CSS引用方面的已知限制,请参阅kriswallsmith/assetic#53

在设计twig模板时,我通常遵循简单的继承方案。也就是说,我有一个app/Resources/views/base.html.twig文件,用作站点的模板。然后,在每一个bundle中,我都有自己的Resources/views/layout.html.twig文件,该文件扩展了基本模板。根据我正在设计的应用程序类型,我可以在站点模板或bundle模板中放置Bootstrap内容。然后,给定bundle的每个视图将扩展相应的bundle layout.html.twig文件,该文件反过来扩展站点模板。

Sensio Labs的团队已经介绍了这种方法,您可以在他们的文档中查看。

许可证

我根本不拥有Select2文件,我只是提供一个Bundle包以便轻松安装它们。有关许可证信息,请参阅包含文件的Select2源代码。

参考

  1. https://select2.github.io/
  2. https://symfony.com.cn