雪帽 / core-bundle
Symfony SnowcapCoreBundle
Requires
- php: >=5.3.3
- symfony/framework-bundle: >=2.7
Requires (Dev)
- doctrine/data-fixtures: ^1.1
- doctrine/doctrine-bundle: ^1.5
- doctrine/orm: ^2.5
- fzaninotto/faker: ^1.5
- phpunit/phpunit: ^4.8
- symfony/phpunit-bridge: ^2.7
- symfony/symfony: >=2.7
This package is not auto-updated.
Last update: 2024-09-14 12:53:03 UTC
README
雪帽核心包
雪帽核心包是雪帽用于帮助处理一些重复性任务的包,包括但不限于:
- 处理文件和图片上传
- 生成RSS订阅源
- SEO相关任务(网站地图等)
安装
使用composer下载SnowcapCoreBundle
在composer.json中添加SnowcapCoreBundle
对于Symfony < 2.7
{ "require": { "snowcap/core-bundle": "~1.0" } }
对于Symfony >= 2.7
{ "require": { "snowcap/core-bundle": "~2.0" } }
现在运行以下命令让composer下载包:
$ php composer.phar update snowcap/core-bundle
Composer会将包安装到项目的vendor/snowcap
目录。
启用包
在kernel中启用包
<?php // app/AppKernel.php public function registerBundles() { $bundles = array( // ... new Snowcap\CoreBundle\SnowcapCoreBundle(), ); }
运行测试
在运行测试之前,您需要安装包的依赖。使用composer进行安装
$ php composer.phar --dev install
然后您可以简单地运行phpunit
$ phpunit
表单类型
SnowcapCoreBundle提供了一些有用的表单类型。
文件字段类型(snowcap_core_file)
snowcap_core_file字段类型是一个简单的文件上传小部件。它扩展了Symfony的默认file类型,并增加了两个额外功能:
- 允许用户请求删除当前文件
- 小部件包括一个“下载”按钮,允许用户下载文件
用法
<?php // src/Acme/SiteBundle/Form/CandidateType public function buildForm(FormBuilderInterface $builder, array $options) { $builder->add('cv', 'snowcap_core_file', array( 'label' => 'Curriculum Vitae', 'file_path' => 'cvPath', )); }
当Symfony显示表单小部件时,它还会渲染一个“下载”按钮,该按钮基本上是一个指向由file_path选项指定的文件的链接。
选项
file_path
类型: 字符串或可调用函数 必需
可以是Symfony的PropertyAccess组件可以处理的公开路径,也可以是一个可调用函数,该函数只接受字段数据作为参数并返回路径。此路径将用于构建下载按钮的URL。
allow_delete
类型: 布尔值 默认值: true
当为true时,将显示一个复选框,允许用户请求删除当前文件。当勾选时,在表单提交时,字段数据将被替换为Snowcap\CoreBundle\File\CondemnedFile的实例。您需要自己处理该Condemned文件实例(除非您使用SnowcapCoreBundle FileSubscriber)。
delete_label
类型: 字符串 默认值: null
将显示在删除复选框旁边的标签。
download_label
类型: 字符串 默认值: null
将显示在下载按钮上的标签。
图片字段类型
snowcap_core_image字段类型扩展了snowcap_core_file字段类型。它的工作方式相同,但渲染方式不同:它不会显示“下载”按钮,而是实际显示上传的图片。
注意:如果您使用SnowcapImBundle,除了snowcap_core_file提供的选项外,您还可以指定一个im_format选项。它将用于动态创建图片的缩略图。请参阅SnowcapImBundle文档以获取更多信息。