【问题标题】:CakePHP Media Plugin errorCakePHP 媒体插件错误
【发布时间】:2012-10-05 11:39:31
【问题描述】:

我正在使用我的 Cake 2.1 应用程序设置媒体插件。我之前用过 Cake 2.0 的插件,没有遇到任何问题。现在,当我尝试上传文件时收到此错误消息:

Fatal error: Call to a member function pwd() on a non-object in /home/fractalw/public_html/cms/app/Plugin/Media/Model/Behavior/CouplerBehavior.php on line 141

这是我的 bootstrap.php 文件的相关部分: CakePlugin::load('Media');

require APP . 'Plugin' . DS . 'Media' . DS . 'Config' . DS . 'core.php';

$thumbnail = array('fitCrop' => array(100, 100));
$small = array('fitCrop' => array(200, 200));
$large = array('fit' => array(700, 10000));
$smallthumbnail = array('fitCrop' => array(75, 75));
$tinythumbnail = array('fitCrop' => array(35, 35));

Configure::write('Media.filter', array('default' => array(
    'audio' => array(),
    'document' => array(),
    'generic' => array(),
    'image' => compact('small', 'thumbnail', 'smallthumbnail', 'large', 'tinythumbnail'),
    'video' => compact('medium', 'large')
)));

...还有我的模型,File.php:

public $actsAs = array(
    'Media.Transfer',
    'Media.Coupler',
    'Media.Generator',
    'Media.GeneratedDeletable',
    'Media.Meta',
    'Containable'
);

public $validate = array(
    'file' => array(
        'mimeType' => array(
            'rule' => array('checkMimeType', false, array('image/jpeg', 'image/png', 'image/gif'))
        )
    )
);

我在提交上传文件的表单时收到上述错误消息。 CouplerBehavior.php 中有问题的行是:

str_replace('\\', '/', Folder::slashTerm($File->Folder->pwd()))

【问题讨论】:

    标签: cakephp cakephp-2.1


    【解决方案1】:

    好吧,我做了一件傻事。

    我已命名我的模型文件。这显然是 CakePHP 中 File 类的名称。上传文件后,媒体插件会将其转换为新的文件对象,就像在模型中一样。我改名为我的模型附件。为什么会发生这种情况 - 您花了很长时间思考一个问题,然后在互联网上发布一个问题后,您就会立即找到答案......

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-07-07
      • 1970-01-01
      • 2023-03-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-30
      • 1970-01-01
      相关资源
      最近更新 更多