Salut tout le monde.

Je commence a m'attarder de plus en plus sur cakephp depuis 1 petite semaine.
Cependant j'aurais une petite question:
En regardant les tutos cakephp je remarques que Grafikart utilise simplement le find('first') pour la l'action view/show. Hors en regardant la documentation la méthode est simplifié a 2 lignes:

Code grafikart généralement utilisé (simpligfié):

public function view($id = null) {
    $d'page'] = $this->Post->find('first', array(
        'conditions' => array(
            'id' => $id
        )
    );
    $this->set($d);
}

Code Cakephp doc :

<?php
public function view($id = null) {
    $this->Post->id = $id;
    $this->set('post', $this->Post->read());
}
?>

Donc ma question est : Pourquoi utiliser le find('first') et non le read ?

Merci d'avance

3 réponses


avec find('first') tu peut très vite ajouter d'autres conditions.
Pour lire juste un id c'est vrai qu'un read suffit largement.
Si tu veux aller encore plus vite tu peut faire ça en une ligne :

<?php
public function view($id = null) {
    $this->set('post', this->Post->findById($id));
}
?>
Mikachu
Auteur

Ok :)

Donc l'un ou l autre revient au meme pour un view...

Merci

après il y a peut être une (légère) différence en temps de chargement, mais c'est a vérifier.