Heim  >  Artikel  >  Backend-Entwicklung  >  Cakephp-Beispiel für ein einfaches Nachrichtensystem

Cakephp-Beispiel für ein einfaches Nachrichtensystem

黄舟
黄舟Original
2016-12-20 09:29:541028Durchsuche

Datenbankeinstellungen Ich verwende hier die Datenbanknachrichten
Apache: Modul neu schreiben
Ich habe hier einen virtuellen Host eingerichtet, der auf www/app verweist. Wenn es sich um ein virtuelles Verzeichnis handelt, überprüfen Sie die entsprechenden Dokumente.

Erstellen Sie die Felder ID, Titel, Inhalt, Zeit, Sortierung in der neuen Nachrichtentabelle

Da die Nachrichtentabelle bedient werden muss, erstellen Sie zuerst das Nachrichtenmodell
/app/models/ news .php

class news erweitert AppModel{
var $name='news';

Wenn ja nein var $ name='news'; Das Modell in dieser Zeile verwendet standardmäßig die als Nachrichten zu verarbeitende Tabelle (persönliche Vermutung, habe es noch nicht ausprobiert)

Dieses Attribut wird verwendet, um die verwendete Datenbank zu identifizieren var $useTable= 'users'; $name identifiziert nur das Modell. Das Attribut name

$table wird wahrscheinlich verwendet, wenn es um die Beziehung zwischen Modellen geht, oder? Speichern Sie diesen Zweifel
und erstellen Sie eine neue /app/controllers/news_controller.php
Klasse newsController erweitert AppController{
var $uses=array('news'); //Verwenden Sie die Nachrichtenmodell
function index(){
$this->set('lists',$this->news->findAll())
} //Default
function add( $id =0){
if($id){
$this->set('id',$id);
$this->news->id=$id;
}
if(!empty($this->data)){
$ret=$this->news->save($this->data['news']) ;
if($ret){
if($id)
$this->flash('Update erfolgreich','/news/');
else
$this- > flash('Hinzufügen erfolgreich','/news/');
}else{
} if($id)
        $this->flash('Update failed','/news/ add/' .$id);
else
$this->flash('Add failed','/news/add');
}
}
exit();
} //Hinzufügen/Ändern der
Funktion delete($id){
$this->news->id=$id;
$ret=$this->news-> ;remove( );
if($ret)
$this->flash('Löschen erfolgreich','/news/');
else
$this->flash(' Löschen fehlgeschlagen' ,'/news/');

exit();
} //Löschen
function view($id){
$this->news-> id=$ id;
$this->set('news',$this->news->find());
}
}
?>
Das ist es. Besuchen Sie
http://127.0.0.1/app/news/ (dasselbe wie http://127.0.0.1/app/news/index)
http://127.0.0.1/app/news/ hinzufügen
http://127.0.0.1/app/news/view
http://127.0.0.1/app/news/delete

Aber wenn Sie es besuchen, werden Sie aufgefordert, etwas zu verpassen view add.thtml view.thtml delete.thtml index.thtml

Da der von cake ausgegebene Ansichtsname standardmäßig Ihr aktueller Aktionsname ist, verwenden Sie $this->render ('test'); das ist test.thtml

Diese thml-Dateien befinden sich alle im Verzeichnis /app/views/controller/. Der aktuelle Controller ist news
, daher werden die Dateien unter /app/views abgelegt /news/ Verzeichnis.
add.thtml:
formTag('new/title'.$id);?>

textarea('new/content');?>
submit ('submit');?>
< /form>

index.html:

news:


for($i=0;$i?>
title:
}

?>

view.thtml:

title:

content:


Das Obige ist der Inhalt des Cakephp-Beispiels Einfaches Nachrichtensystem. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn