hostnet / form-twig-bridge
此包已被弃用,不再维护。未建议替代包。
允许使用 Symfony 3 表单框架,以 Twig 渲染,而不必使用全部的 Symfony 3!
2.0.1
2016-02-23 08:03 UTC
Requires
- php: >=5.6
- hostnet/path-composer-plugin-lib: ^1.0.0
- symfony/config: ^3.0.2
- symfony/form: ^3.0.2
- symfony/http-foundation: ^3.0.2
- symfony/translation: ^3.0.2
- symfony/twig-bridge: ^3.0.2
- symfony/validator: ^3.0.2
Requires (Dev)
- phpunit/phpunit: ^5.1.0
- symfony/security: ^3.0.2
README
未维护,在 Hostnet 内未使用
接受拉取请求
form-twig-bridge
如果你
- 想使用 Symfony 2 表单组件
- 带有 Twig 渲染
- 但又不想使用全部的 Symfony 2
它受到 Bernhard Schussek 的 standalone-forms 的启发。
如果你想在 Symfony 1 应用程序中使用不仅仅是表单框架,那么 hnDependencyInjectionPlugin 可能更适合你。
安装
- 下载 Composer.
- 将其添加到你的 composer.json 中
"require": {
"hostnet/form-twig-bridge": ">=1.0"
}
- 使用构建器创建一个 FormFactory 和一个配置正确的 Twig_Environment
use Hostnet\FormTwigBridge\Builder; use Symfony\Component\Security\Csrf\TokenStorage\NativeSessionTokenStorage; $csrf = new NativeSessionTokenStorage(); $translator_builder = new TranslatorBuilder(); // $translator_builder->setLocale('nl_NL'); // Uncomment if you want a non-english locale $builder = new Builder(); $environment = $builder ->setCsrfTokenManager($csrf) ->setTranslator($translator_builder->build()) ->createTwigEnvironmentBuilder()->build(); $factory = $builder->buildFormFactory();
- 使用表单工厂创建你的表单,请参阅 symfony 文档。
- 如果你使用 Twig 模板:像平常一样使用表单工厂和 twig 环境
- 如果你使用 PHP 模板,使用 PhpRenderer 的 公共方法。用
new PhpRenderer($twig_environment)
初始化它
可选配置选项
构建器
enableAnnotationMapping
启用 doctrine 注解映射(需要 doctrine/annotations)addFormExtension
添加你的自定义表单扩展
TwigEnvironmentBuilder
prependTwigLoader
在 form-twig-bridge 添加的加载器之前添加额外的 twig 加载器。你始终可以自己添加加载器,即使在构建之后。setFormTheme
用于自定义表单主题,请注意,你将必须添加一个加载器来加载你的表单主题
变更日志
1.1.0
- 现在与 Symfony 2.7.0 兼容
- 为与 Symfony 3.0 兼容,已弃用
setCsrfProvider
,并改用setCsrfTokenManager
1.0.1
- 现在可以在完整的 Symfony2 框架中使用。
1.0
- 从 Symfony 2.1 升级到 Symfony 2.3。
- [重大更改] 向
Builder
中添加了setTranslator
。 - [重大更改] 从
TwigEnvironmentBuilder
中移除了setLocale
。
运行单元测试
- 自己克隆仓库
- 进入克隆的目录
- 运行
composer.phar install
- 运行
phpunit