suchanfragen aus der layout-datei

Ausgabedaten formatieren und darstellen

suchanfragen aus der layout-datei

Beitragvon nimda am Di 24. Nov 2009, 15:07

Hallo,

seit ein paar wochen nun bin ich schon dran ein projekt mit cakephp zu realisieren und es macht schon sehr viel spass! es ist wirklich ein so schön übersichtliches konzept und aufbau von allem, für das ich sicher noch viel lernen möchte. aber ja also ich bin noch im anfangsstadium:

nun zu meiner frage:

ich hab in meinem layout (default.ctp) eine quasi quicksearch suchfunktion für bücher integriert. sie funktioniert auch, allerdings nur wenn ich bereits über den books-controller mir eine seite anzeigen lasse. also wenn ich z.b. grad auf einer statischen seite bin funktioniert nichts. es wird zwar in der adressleiste die richtige adresse aufgerufen, aber leider nichts angezeigt.

zu meinem code:
default.ctp -> hier die suchanfrage

Code: Alles auswählen
<body>
  <div id="header">
         <b>Onlinebibliothek</b>
      <div class="right">
      <?php
        echo $form->create('books', array('url'=>array('controller' => 'books', 'action' => 'quickfind')));
        echo $form->input('title');
        echo $form->end('schnell suchen');    
      ?>
      </div>

  </div> ...


books_controller.php -> hier die funktion quickfind

Code: Alles auswählen
function quickfind() {
            pr($this->params);
            $key = $this->data[books][title];
            $conditions = array (
                    'or' => array(
                            'Book.title LIKE' => '%'.$key.'%',
                            'Book.subtitle LIKE' => '%'.$key.'%'
                               ));
           
            $this->set('books',$this->Book->find('all', array('conditions' => $conditions)));
        }

kann mir erklären wieso das eben nur teilweise funktioniert?
nimda
 
Beiträge: 2
Registriert: Di 24. Nov 2009, 14:20
CakePHP-Version: cakephp1.2.5
OS: kubuntu 9.10

Re: suchanfragen aus der layout-datei

Beitragvon euromark am Di 24. Nov 2009, 17:52

an welche adresse postest du denn?
an die eigene? denn dann musst du im beforeFilter() oder besser im beforeRender() etc eine globale seitenweite abfrage zu den post params machen

ansonsten wird die eben in controllern wie dem page controller nich getriggert, woher sollte er das auch wissen?
euromark
 
Beiträge: 397
Registriert: Fr 27. Jun 2008, 22:17
Wohnort: München
CakePHP-Version: 1.2.4
OS: Windows

Re: suchanfragen aus der layout-datei

Beitragvon nimda am Di 24. Nov 2009, 22:05

danke schon mal für die schnelle antwort, bin mir nur nicht sicher ob ich das richtig versteh.

an welche adresse postest du denn?
an die eigene?

Code: Alles auswählen

echo $form->create('books', array('url'=>array('controller' => 'books', 'action' => 'quickfind')));

poste ich hierdurch nicht die anfrage an den BooksController mit der action quickfind also quasi books/quickfind? ich dachte hiermit gebe ich bereits an, welcher Controller die daten des posts verarbeiten soll.

denn dann musst du im beforeFilter() oder besser im beforeRender() etc eine globale seitenweite abfrage zu den post params machen

meinst du im beforeRender() des AppController's die in dem suchfeld eingegebenen daten für alle notwendigen Controller abfragen?

wahrscheinlich ist es super simple, aber ich komm grad einfach nicht drauf. danke schon mal für deine hilfe :)
nimda
 
Beiträge: 2
Registriert: Di 24. Nov 2009, 14:20
CakePHP-Version: cakephp1.2.5
OS: kubuntu 9.10

Re: suchanfragen aus der layout-datei

Beitragvon euromark am Mi 25. Nov 2009, 12:22

sry, hab dich falsch verstanden

dafür weiß ich aber was dein problem ist!!!
korrekt wäre:
Code: Alles auswählen
echo $form->create('Book', array('url'=>array('controller' => 'books', 'action' => 'quickfind')));


sowas findest du aber sehr leicht selbst raus, wenn du ein pr() der Post daten im Ziel-Controller etc machst
euromark
 
Beiträge: 397
Registriert: Fr 27. Jun 2008, 22:17
Wohnort: München
CakePHP-Version: 1.2.4
OS: Windows


Zurück zu Views

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron