2010-07-01 13 views
0

Je suis encore un débutant, et devinez que c'est une simple question CakePHP ...Comment faire écho l'enregistrement sélectionné?

tout ce que je veux est d'écho récupéré des données de la base de données (une ligne est sélectionnée).

i ont le code suivant:

$cover_page = $this->Publication->find('list', array('conditions' => array('Publication.id' => $id))); 

maintenant, comment puis-je faire écho le titre du champ de la ligne de base de données sélectionnée?

tnx dans adv !!!

+0

Juste au cas où vous ne l'avez pas essayé; essayez la console de gâteau et cuire: http://book.cakephp.org/view/113/Code-Generation-with-Bake – quantumSoup

+0

Si vous voulez juste une seule ligne, vous devriez utiliser 'read()' http: //api.cakephp.org/class/model#method-Modelread –

Répondre

0

De l'cookbook:

find('list', $params) returns an indexed array, useful for any use where you would want a list such as for populating input select boxes.

Il donnera un résultat comme ci-dessous

Array 
(
//[id] => 'displayValue', 
[1] => 'displayValue1', 
[2] => 'displayValue2', 
[4] => 'displayValue4', 
[5] => 'displayValue5', 
[6] => 'displayValue6', 
[3] => 'displayValue3', 

)

Puisque dans votre code que vous avez spécifié le id pour rendre le résultat un seul enregistrement , vous ne pouvez pas vraiment besoin de l'utiliser, mais vous pouvez accéder au titre avec $cover_page[$id] si vous « ai mis la droite displayfield.A façon normale de faire votre travail serait

$cover_page = $this->Publication->find('first', array('conditions' => array('Publication.id' => $id))); 

ou

$cover_page = $this->Publication->findById($id); 

Les deux peuvent obtenir le titre par

$cover_page['Publication']['title'] 
0

Vous pouvez y accéder comme celui-ci (CakePHP crée un tableau du résultat de base de données):

echo $cover_page['Publication']['title']; 

Pour le faire entrer dans la vue faire:

$this->set('cover_page',$cover_page); 
+0

La raison de devoir spécifier l'index 'Publication' est que lorsque vous récupérez des modèles associés, les autres apparaîtront sous leurs index respectifs. – Leo

+0

bien, c'est un problème, j'ai essayé cela avant, mais j'obtiens une erreur: Avis (8): Indéfini index: Publication [APP \ controllers \ publications_controller.php, ligne 302] – user198003

+0

'find ('liste ') 'ne donne pas d'index de nom de modèle. – Young