resmedia/yii2-mongo-gallery-manager
Composer 安装命令:
composer require resmedia/yii2-mongo-gallery-manager
包简介
Extension for yii2 with mongodb, that allows to manage image galleries
README 文档
README
This is rebuild of https://github.com/zxbodya/yii-gallery-manager
Features
AJAX image upload Optional name and description for each image Possibility to arrange images in gallery Ability to generate few versions for each image with different configurations Drag & Drop
Decencies
Yii2 Twitter bootstrap assets (version 3) Imagine library JQuery UI (included with Yii) Installation: The preferred way to install this extension is through composer.
Install
run
php composer.phar require resmedia/yii2-mongo-gallery-manager
or run
composer require resmedia/yii2-mongo-gallery-manager
or add to composer
{
"resmedia/yii2-mongo-gallery-manager": "^1.1.1"
}
Usage
1) Add widget where you need to upload images
GalleryManager::widget([ 'model' => $model, 'behaviorName' => 'galleryBehavior', 'apiRoute' => 'galleryApi' ])
2) Add to controller examples
with actions and behaviors
$actions['galleryApi'] = [ 'class' => GalleryManagerAction::class, 'types' => [ 'news' => News::class ] ];
$behaviors['access']['rules'] = [ [ 'actions' => [ ......, 'galleryApi', ], 'allow' => true, 'roles' => ['@'], ], ];
or only actions
class NewsController extends Controller { ... public function actions() { return [ 'galleryApi' => [ 'class' => GalleryManagerAction::class, // mappings between type names and model classes (should be the same as in behaviour) 'types' => [ 'news' => News::class ] ], ]; }
3) Add to model
'galleryBehavior' => [ 'class' => GalleryBehavior::class, 'type' => 'news', 'extension' => 'jpg', // image dimmentions for preview in widget 'previewWidth' => 300, 'previewHeight' => 200, // path to location where to save images 'directory' => Yii::getAlias('@api') . '/web/bucket/items', 'url' => Yii::$app->params['domainFrontend'] . '/bucket/items', // additional image versions 'versions' => [ 'original' => function ($img) { $width = 1000; $height = 550; return $img ->copy() ->thumbnail(new Box($width, $height), ImageInterface::THUMBNAIL_OUTBOUND); }, 'medium' => function ($img) { $width = 600; $height = 328; return $img ->copy() ->thumbnail(new Box($width, $height), ImageInterface::THUMBNAIL_OUTBOUND); }, 'preview' => function ($img) { $width = 300; $height = 164; return $img ->copy() ->thumbnail(new Box($width, $height), ImageInterface::THUMBNAIL_OUTBOUND); }, ] ], ]
See also documentations of imagine for image transformations.
4) To get images
foreach($model->getBehavior('galleryBehavior')->getImages() as $image) { echo Html::img($image->getUrl('medium')); }
TODO
Make alert on big or small size
resmedia/yii2-mongo-gallery-manager 适用场景与选型建议
resmedia/yii2-mongo-gallery-manager 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 155 次下载、GitHub Stars 达 1, 最近一次更新时间为 2021 年 02 月 13 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「mongodb」 「image」 「extension」 「gallery」 「yii2」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 resmedia/yii2-mongo-gallery-manager 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 resmedia/yii2-mongo-gallery-manager 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 resmedia/yii2-mongo-gallery-manager 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Generates Symfony2 documents, forms and CRUD
A custom URL rule class for Yii 2 which allows to create translated URL rules
Yii2 LightBox image galary widget uses Lightbox v2.10.0 by Lokesh Dhakar
The Yii2 extension uses jQuery jquery.carousel-1.1.min.js and makes image carousel from php array of structure defined.
TYPO3 CMS extension to create gallery content element with preset crop ratios and pagination
UI Kit 3 Extension for Yii2
统计信息
- 总下载量: 155
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 1
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2021-02-13