m-adamski/phone-number-bundle

此包已被废弃,不再维护。作者建议使用 m-adamski/symfony-phone-number-bundle 包。

Symfony 的电话号码包

安装: 10

依赖者: 0

建议者: 0

安全: 0

星标: 0

关注者: 0

分支: 0

公开问题: 0

类型:symfony-bundle

1.0.2 2018-10-26 08:31 UTC

This package is auto-updated.

Last update: 2022-02-01 13:13:59 UTC


README

此包已弃用! 已创建新仓库以维护包名的约定。建议使用 此包

自定义 PhoneNumber Bundle,将 libphonenumber 库集成到 Symfony 4 项目中。此包受 PhoneNumberBundle 启发,但进行了简化,专为个人项目创建 - 当然,如果您想用也可以使用。

安装

使用 Composer 在 Symfony 4 项目中安装此包

$ composer require m-adamski/symfony-phone-bundle

配置

config/packages/doctrine.yaml 中注册新的 Doctrine 类型

doctrine:
    dbal:
        types:
            phone_number: Adamski\Symfony\PhoneNumberBundle\Doctrine\DBAL\Types\PhoneNumberType

此包提供 Bootstrap 4 的类型模板。在 config/packages/twig.yaml 中注册它

twig:
    form_themes:
        - '@PhoneNumber/Form/phone_number_widget.html.twig'

您还可以通过将 - '@PhoneNumber/Form/bootstrap_4_layout.html.twig' 添加到 form_themes 参数来覆盖默认的 Symfony Bootstrap 4 模板

twig:
    form_themes:
        - '@PhoneNumber/Form/bootstrap_4_layout.html.twig'
        - '@PhoneNumber/Form/phone_number_widget.html.twig'

如何使用它?

包提供了额外的 Doctrine 类型和表单类型。首先,编辑实体以使用 PhoneNumber 类型

use Adamski\Symfony\PhoneNumberBundle\Model\PhoneNumber;
use Adamski\Symfony\PhoneNumberBundle\Validator\Constraints\PhoneNumber as AssertPhoneNumber;

/**
 * @var string
 * @AssertPhoneNumber
 * @ORM\Column(name="phone_number", type="phone_number", nullable=true)
 */
protected $phoneNumber;

现在是时候在表单类型中提供更改了

use Adamski\Symfony\PhoneNumberBundle\Form\PhoneNumberType;

public function buildForm(FormBuilderInterface $builder, array $options) {
        $builder->add("phoneNumber", PhoneNumberType::class, [
            "label"     => "Phone number",
            "preferred" => "PL",
            "required"  => false
        ]);
}

许可

MIT