jedenweb/plupload

基于Plupload的Nette框架文件上传

安装: 66

依赖: 0

建议者: 0

安全: 0

星星: 1

关注者: 2

分支: 1

开放问题: 0

语言:JavaScript

dev-master 2017-12-19 14:56 UTC

This package is auto-updated.

Last update: 2024-08-27 21:38:32 UTC


README

请使用原始仓库代替。

Plupload

简单的Nette框架文件上传器

最初由Nikolas Tsiongas创建,采用新BSD许可证。

安装

Plupload需要jQueryjQueryUI

使用Composer安装jedenweb/images是最佳方式

{
	"require" {
		"jedenweb/plupload": "dev-master"
	}
}

之后,您需要在config.neon中注册扩展

extensions:
	plupload: JedenWeb\Plupload\DI\PluploadExtension

用法

创建组件

在演示者中

	/**
	 * @inject
	 * @var \JedenWeb\Plupload\Plupload
	 */
	public $plupload;


	/**
	 * @param string $name
	 * @return \JedenWeb\Plupload\Widget\JQueryUIWidget
	 */
	public function createComponentPlupload($name)
	{
		$this->plupload->getUploader()
				 ->onSuccess[] = callback($this, 'handleUploadFile');

		return $this->plupload;
	}


	/**
	 * @param \Nette\Http\FileUpload $file
	 */
	public function handleUploadFile(\Nette\Http\FileUpload $file)
	{
		$file->move(WWW_DIR . '/media/upload/'. $file->getSanitizedName());

		$this->invalidateControl('images');
	}

展示上传文件的示例方法

在演示者中

	public function actionDefault()
	{
		$this->template->images = \Nette\Utils\Finder::find('*')->from(WWW_DIR . '/media/upload');
	}

在模板中

	{control plupload}

	{snippet images}
		{foreach $images as $image}
			<img src="{$basePath}/media/upload/{$image->getFilename()}" />
		{/foreach}
	{/snippet}