ログインした使用IDに基づいて写真の名前と写真のディレクトリをユーザーテーブルに保存できません。既存のユーザーの写真をアップロードしようとしています彼の使用id.The写真のフィールドは、既存のユーザーのために更新されていません。このプラグインjosegonzalezを使って写真をアップロードしようとしています。私を助けてください。Cakephp 3.3 - プラグインを使用して画像を保存できませんjosegonzalez
<?php echo $this->Form->create($user, ['type' => 'file']); ?>
<?php echo $this->Form->input('photo',['type' => 'file', 'class' => 'form-control']); ?>
<?php echo $this->Form->input('photo_dir', ['type' => 'hidden']); ?>
<?php echo $this->Form->button(__('Submit'), ['type'=>'submit','class' => 'btn btn-success']); ?>
<?php echo $this->Form->end(); ?>
UsersTable
$this->addBehavior('Josegonzalez/Upload.Upload', [
'photo' => [
'fields' => [
// if these fields or their defaults exist
// the values will be set.
'dir' => 'photo_dir', // defaults to `dir`
],
],
]);
UsersController/add
public function add($id=null)
{
if ($this->request->is('post')) {
if (!$id) {
$id = $this->Auth->user('id');
}
$user = $this->Users->get($id);
$fileName = $this->request->data['photo']['name'];
$user->photo = $fileName;
//$user = $this->Users->patchEntity($user, $this->request->data);
if ($this->Users->save($user)) {
$this->Flash->success(__('Your photo has been saved.'));
return $this->redirect(['action' => 'index']);
}
$this->Flash->error(__('Unable to add your photo.'));
}
$this->set('user', $user);
}
私の悪い、<?php echo $ this-> Form-> create($ user、['type' => 'file']); ?>はenctypeを生成します – Aarrbee
はい私はそれを試しました。ありがとう!それは動作しませんでした – Mythri
あなたのコントローラにthis-> request-> dataのデバッグを投稿できますか?それは私がもっと理解するのを助けるでしょう。 – Aarrbee