Upload Pluginを使用してください。ファイルを上書きする前に既存のファイルがチェックされていないように見えるので、foreign_keyフォルダ内のファイルをランダムに「保証」するようアップロードします。アップロードプラグイン - パスを上書きする方法
私のような何かにアップロードするファイルたい:私は'pathMethod'=>'random'
を設定すると
/webroot/uploads/02/88/06/4f93676e-347c-4e0c-8e6c-0a3cadcd7f7c/my_photo.jpg
を、私は3乱数(0〜100の間)フォルダを取得するが、私は主を得ることはありませんキーフォルダ。
または、 'pathMethod' => 'primaryKey'を設定すると、プライマリキーフォルダが取得されますが、乱数は取得されません。 (それはそれがために何だかどうかわからない)Upload behavior of the pluginで
は、uploadSettings
機能がありますが、私は私のコントローラを介して、それを実行しようとすると、それは何もしません。
//ArticleDatasController
$this->Upload->uploadSettings('Upload', 'photo', array('path'=> '{ROOT}webroot{DS}uploads{DS}test{DS}ArticleData{DS}{field}'));
if($this->Upload->save($this->request->data)) {
はここに私のアップロードですモデルの$ actsAs:
//Upload model
public $actsAs = array(
'Upload.Upload' => array(
'photo' => array(
'thumbnailSizes' => array(
'xvga' => '1024x768',
'vga' => '640x480',
'thumb' => '80x80',
),
'thumbnailMethod' => 'php',
'thumbnailQuality' => '80',
'pathMethod'=>'random',
'path' => '{ROOT}webroot{DS}uploads{DS}{field}{DS}',
'maxSize' => '5242880', //5MB
'mimetypes' => array('image/jpeg', 'image/png', 'image/gif', 'image/bmp'),
'extensions' => array('jpg', 'gif', 'png', 'bmp'),
),
)
);