Empfehlungen: Erweiterte Suche

Auth-Component view-Action

Klassen zur Datenverarbeitung in den Controllern (DRY)

Auth-Component view-Action

Beitragvon sebbo.cake » Mi 12. Okt 2011, 09:48

Hallo liebe Gemeinde,

ich beschäftige michb derzeit intensiver mit der Auth-Component und habe mittlerweile für meine begrenzten Möglichkeiten ganz gute Fortschritte gemacht (Dank eurer Hilfe!)

Nun fehlt mir noch ein letzter Kniff um rundum glücklich zu sein!
Nachdem ich mit einem beforeFilder gecheckt habe, ob ein user, der ein JA (True) im Feld "edit" in der usertabelle hat, kann dieser user tatsächlich auf die edit-funktion zugreifen. Soweit so gut. Nun möchte ich aber, dass dieser user nur diejenigen Posts editieren darf, die er selbst geschrieben hat, also wo ID(usertabelle) == userID(poststabelle) ist. Muss ich das in der edit-Funktion definieren oder kann man in der Allow-Anweisung im beforeFilder des Controllers etwas wie:

Code: Alles auswählen
 $this->Auth->allow('view/$this->Auth->user('id')');


eintragen?
sebbo.cake
 
Beiträge: 16
Registriert: Mi 11. Mai 2011, 13:31

Re: Auth-Component view-Action

Beitragvon Mathias » Mi 12. Okt 2011, 10:43

Mein Ansatz wäre:
Code: Alles auswählen
        if ($this->Post->find('first', array('fields' => 'user_id', 'conditions' => array('user_id' => $this->Session->read('Auth.User.id')), 'recursive' => -1))) {
            // Do something
        } else {
            $this->Session->setFlash(__('*Fehlermeldung', true));
            $this->redirect($this->referer());
        }
cheers
Benutzeravatar
Mathias
 
Beiträge: 225
Registriert: Mi 4. Jun 2008, 22:30
Wohnort: Berlin
CakePHP-Version: 1.3.x
OS: OS X 10.6.x


Zurück zu Components

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast