a2design-inc/cakephp-image-manager 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

a2design-inc/cakephp-image-manager

Composer 安装命令:

composer require a2design-inc/cakephp-image-manager

包简介

CakePHP Image Manager plugin

README 文档

README

Setting up

Put this into your Cake's plugin directory

In your model

    public $actsAs = array('ImageManager.ImageManager');

    // Gallery
    public $hasAndBelongsToMany = array(
            'Image' => array(
                'className' => 'ImageManager.Image',
                'foreignKey' => 'foreign_id',
                'associationForeignKey' => 'image_id',
                'joinTable' => 'images_relations',
                'conditions' => array('foreign_name' => 'Page')
            ),
        );

    // One image
    // Name of association should by 'ModelField'
    public $belongsTo = array(
            'PageImageId' => array(
                'className' => 'ImageManager.Image',
                'foreignKey' => 'image_id',
            )
        );

In your layout

    echo $this->Html->script(Router::url(array(
            'controller'=> 'images',
            'action' => 'scripts',
            'full_base' => true,
            'admin' => false,
            'plugin' => 'image_manager',
    )));
    echo $this->Html->script('ImageManager.image_manager');
    echo $this->Html->script('ImageManager.jquery.drag.drop');
    echo $this->Html->css('ImageManager.image_manager');

In your config file

    Configure::write(
        array (
            'ImageManager.Upload' => array(
                'filename' => array(
                    'thumbnailSizes' => array(
                        'small' => '500x500',
                        'thumb' => '253x158',
                        'big' => '800l',
                        'nano' => '100x100',
                        'pico' => '70x70',
                    )
                ),
            )
        )
    );

In your controller

    public $helpers = array(
            'ImageManager.ImageManager'
        );

Run MySQL script

    CREATE TABLE `images` (
          `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
          `foreign_key` int(10) unsigned DEFAULT NULL,
          `model` varchar(255) NOT NULL DEFAULT '',
          `filename` varchar(255) NOT NULL DEFAULT '',
          `dir` int(11) unsigned DEFAULT NULL,
          `order` int(11) unsigned DEFAULT NULL,
          `is_slider` int(2) unsigned DEFAULT NULL,
          `site_id` int(11) unsigned DEFAULT NULL,
          PRIMARY KEY (`id`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=utf8;

    CREATE TABLE `images_relations` (
          `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
          `foreign_id` int(11) unsigned NOT NULL,
          `foreign_name` varchar(255) NOT NULL,
          `image_id` int(11) unsigned NOT NULL,
          PRIMARY KEY (`id`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=utf8;

Usage

// One image
<?php echo $this->ImageManager->image('Page.image_id'); ?>

// Gallary
<?php echo $this->ImageManager->gallery('Gallery'); ?>

a2design-inc/cakephp-image-manager 适用场景与选型建议

a2design-inc/cakephp-image-manager 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 83 次下载、GitHub Stars 达 6, 最近一次更新时间为 2015 年 07 月 15 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 a2design-inc/cakephp-image-manager 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 a2design-inc/cakephp-image-manager 我们能提供哪些服务?
定制开发 / 二次开发

基于 a2design-inc/cakephp-image-manager 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 83
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 6
  • 点击次数: 9
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 6
  • Watchers: 15
  • Forks: 5
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2015-07-15