Domanda

In CakePHP, ho un controller che dovrebbe ricevere un parametro e quindi chiamare il modello per lavorare con il database per mostrare il risultato in una vista.Approccio MVC abbastanza comune.

Immagina il controller come "inserire un nuovo post" che dovrebbe essere associato a un utente specifico.

Allora, l'URL dovrebbe essere: http://mysite/inspost/(user_id).

Il problema è, quando URL è come http://mysite/inspost/

Mostrerà la stessa vista e inserirà il nuovo post anche se l'utente_ID non è stato specificato.

Come posso controllare questo?

È stato utile?

Soluzione

Dal 2 nd pagina del tutorial del blog, Aggiunta di un livello :

public function view($id = null) {
    if (!$id) {
        throw new NotFoundException(__('Invalid post'));
    }

    $post = $this->Post->findById($id);
    if (!$post) {
        throw new NotFoundException(__('Invalid post'));
    }
    $this->set('post', $post);
}
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top