Erreur Plugin Media

Par alexandre garnier, il y a 10 ans


Bonjour, j'ai un probléme avec le plugin Media

Ce que je fais

J'ai dans appController ceci

public $helpers = array('html','Form','Media.Media'); public function canUploadMedias($model, $id){ if($model == 'User' & $id = $this->Session->read('Auth.User.id')){ return true; // Tout le monde peut éditer les médias de son profil } return $this->Session->read('Auth.User.role') == 'admin'; // Le reste des média n'est gérable que par l'administrateur } public $recursive = -1; public $actAs = array('Containable');

dans mon model Post

<?php App::uses('AppModel', 'Model'); class Post extends AppModel{ public $actsAs = array( 'Containable', 'Media.Media' => array( 'path' => 'img/PhotoP/%f' ) ); }

dans ma vue index Post

<?php foreach ($posts as $rooms): ?> <div class="col-md-12"> <h3><?= $rooms['Post']['name'];?></h3> <?= $this->html->image($rooms['Thumb']['file']); ?> </div> <?php endforeach; ?>

dans mon PostsController

public function index() { $posts = $this->Post->find('all',array( 'fields'=>array('Post.id','Post.name','Post.content','Thumb.file'), 'contain'=>array('Thumb') )); $this->set(compact('posts')); debug($posts); }

Dans ma bbd la table media est bien céer et cintient les informations

Ce que j'obtiens

Malgré rout ça j'ai les erreurs suivantes

Model "Post" is not associated with model "Thumb" [CORE\Cake\Model\Behavior\ContainableBehavior.php, line 342]

et

Model "Post" is not associated with model "Thumb" [CORE\Cake\Model\Behavior\ContainableBehavior.php, line 342]

Où ai-je fait une erreur ou oublier quelque chose ?
Merci d'avance pour votre aide .

2 réponses

Lartak, il y a 10 ans

Bonsoir.

public $recursive = -1; public $actAs = array('Containable');

Ces lignes là ne sont pas à mettre dans le controller, mais dans AppModel.
Il est d'ailleurs inutile de déclarer le behavior Containable génériquement si c'est pour le déclarer dans les modèles à chaque fois que tu en as besoin.
Pourquoi avoir mentionné deux fois exactement le même message d'erreur ?

alexandre garnier, il y a 10 ans

Merci pour ta réponse, J'ai trouver mon erreur, il manquais media.id dans la table posts de ma bdd . :-/