2011-07-16 16 views
0

私は私が最初のディレクトリ私のユーザーのモデルではCakePHPのメディアプラグイン

を作成した、コマンドラインからcore.phpの

require APP . 'plugins/media/config/core.php'; 

$xsmall = array('fitCrop' => array(75, 50)); 
$small = array('fitCrop' => array(75, 50)); 
$medium = array('fitCrop' => array(220, 140)); 
$large = array('fitCrop' => array(700, 335)); 
$xlarge = array('fitCrop' => array(700, 335)); 

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

中(https://github.com/davidpersson/media

メディアプラグインを設定しようとしていますIこれを追加しました

class User extends AppModel { 
    var $name = 'User'; 
    var $actsAs = array('Containable', 'Media.Transfer', 'Media.Generator', 'Media.Coupler'); 

アップロードフォーム

 <!-- Display Photo Form --> 
     <?php echo $this->Form->create('User', array('controller' => 'users','action' => 'display_photo', 'type' => 'file')); ?> 
     <?php echo $this->Form->input('id'); ?> 
     <?php echo $this->Form->file('display_photo'); ?> 
     <?php echo $this->Form->end(array('label' => 'Upload', 'id' => 'upload-button', 'name' => 'upload-button', 'div' => false)); ?> 
     <!-- Form Ends --> 

アクションdisplay_photo

function display_photo(){ 
    if(!empty($this->data)) { 
     debug($this->data); 
     $this->User->save($this->data, array('fields' => array('display_photo'))); 

    } 
} 

エラー

SQL Error: 1054: Unknown column 'Array' in 'field list' 
[CORE\cake\libs\model\datasources\dbo_source.php, line 684] 
+0

'display_photo'でデバッグを行います。私はそれが多次元配列であることを期待しています。 'field'は' array( 'field_one'、 'field_two') ' – Ross

答えて

1

メディアプラグインは一つのフィールドにファイル名とディレクトリを保存できる場合、私は(よく分からないウル元からその:display_photo )私はフィールドbasenamedirname(display_photoを削除する)を追加した場合、私はそれが動作するはずだと確信しています。

また、表示フィールドをecho $ this-> Form-> file( 'file')に変更する必要があります。

+0

をお待ちしています。一度、display_photoをファイルに変更しました。basenameとdirenameはオプションです。 –

関連する問題