salut tous im essayant de charger des informations d'une table dans une liste déroulante. J'essaie de charger account_id de ma table accounts_users qui contient - id, accounts_id, user_id dans une liste déroulante. Account_id ne doit apparaître que si l'ID de la table users = user_id de la table accounts_users. À l'heure actuelle, la boîte de dépôt ne charge que l'ID de la table accounts_users.cakePHP chargement des données d'une table dans une liste déroulante
ici est ma fonction add
function add() {
$this->set('title_for_layout', 'Please Enter Your Temaplate Details');
$this->set('stylesheet_used', 'style');
$this->set('image_used', 'eBOXLogo.jpg');
$accounts=$this->User->AccountsUser->find('list', array('conditions' => array('user_id' => $this->Auth->user('id'))));
debug($accounts);
if($this->request->is('post')){
$this->Template->create();
if ($this->Template->save($this->request->data)) {
$this->Session->setFlash('The template has been saved');
$this->redirect(array('controller' => 'Fields','action' => 'add'));
} else {
$this->Session->setFlash('The template could not be saved. Please, try again.');
}
}
$this->set('accounts', $accounts);
}
et voici la vue ajouter
<?php
echo $this->Form->create('Template', array('action'=>'add'));
echo $this->Form->input('name',array('label'=>'Template Name: '));
echo $this->Form->input('account_id',array('label'=>'Business: ', 'type' => 'select', 'options' => $accounts));
echo $this->Form->input('description',array('label'=>'Short Description Of Template: '));
echo $this->Form->end('Click Here To Submit Template');
?>
les sorties de débogage
app \ Controller \ TemplatesController.php (ligne 20) tableau ( (entier) 3 => '3' )
l'utilisateur dans la table accounts_users ne dispose que d'une entrée avec id = 3, account_id = 10 et user_id = 14