PHP:Cakephp-Framework: Unterschied zwischen den Versionen
Admin (Diskussion | Beiträge) |
Admin (Diskussion | Beiträge) |
||
| Zeile 1: | Zeile 1: | ||
[[Kategorie:PHP]] | [[Kategorie:PHP]] | ||
== Einstellungen der Tools == | |||
Wenn die Webseite nicht nur Englisch , sondern auch andere Sprachen verwenden soll, dann ist es notwendig einen einheitlichen Zeichensatz festzulegen. Wenn man das nicht macht, können Sonderzeichen falsch dargestellt werden. Meist wird die UTF-8-Zeichenkodierung dafür verwendet. Im Folgenden zeige ich, wie man die Tools, die ich verwendet auf den UTF-8-Zeichensatz umstellt. | |||
= | {| class="wikitable sortable" | ||
|- | |||
! Tools !! Einstellung | |||
|- | |||
| Browser || Beispiel | |||
|- | |||
| Datenbank (mysql) || Beispiel | |||
|- | |||
| IDE (Netbeans) || | |||
|- | |||
| IDE (Eclipse) || Beispiel | |||
|- | |||
| Editor (jedit) || Beispiel | |||
|- | |||
| Editor (notepad++) || | |||
|- | |||
| Spracheditor (poedit) || Beispiel | |||
|- | |||
| SQL-Developer || Beispiel | |||
|} | |||
'''Im Browser:''' | '''Im Browser:''' | ||
Version vom 9. Februar 2014, 18:08 Uhr
Einstellungen der Tools
Wenn die Webseite nicht nur Englisch , sondern auch andere Sprachen verwenden soll, dann ist es notwendig einen einheitlichen Zeichensatz festzulegen. Wenn man das nicht macht, können Sonderzeichen falsch dargestellt werden. Meist wird die UTF-8-Zeichenkodierung dafür verwendet. Im Folgenden zeige ich, wie man die Tools, die ich verwendet auf den UTF-8-Zeichensatz umstellt.
| Tools | Einstellung |
|---|---|
| Browser | Beispiel |
| Datenbank (mysql) | Beispiel |
| IDE (Netbeans) | |
| IDE (Eclipse) | Beispiel |
| Editor (jedit) | Beispiel |
| Editor (notepad++) | |
| Spracheditor (poedit) | Beispiel |
| SQL-Developer | Beispiel |
Im Browser:
<meta charset="utf-8" /> (HTML5)
bzw.
<meta http-equiv="content-type" content="text/html; charset=utf-8" /> (XHTML)
Im Editor jedit:
Extras/Globale Optionen --> Zeichenkodierung --> Standardzeichenkodierung
Im Editor Notepad++:
Kodierung
In sqldeveloper:
Extras/Voreinstellungen --> Umgebung --> Codierung
In eclipse:
Window/Preferences --> General/Editors/Text Editors/Spelling --> Encoding
Im Sprachtool poedit:
Wenn ein Katalog geöffnet ist. Katalog/Eigenschaften --> Zeichensatz
Aufbau der Webseite
Wie die Webseite aufgebaut wird, beschreibt die Datei app/Views/Layout/default.ctp. Den HTML-Code, den die Views zu den entsprechenden Controllern erzeugen wird durch:
echo $this->fetch('content');
eingefügt.
Man kann weitere dieser Einfügestellen erstellen indem man in einer View einen Abschnitt definiert, der wie folgt aussehen würde:
$this->start('Abschnitt');
//erzeuge HTML-Text
$this->end();
Auf diesen Namen bezieht man sich dann in der app/Views/Layout/default.ctp durch Einfügen von:
echo $this->fetch('Abschnitt');
Installation
git clone git://github.com/cakephp/cakephp.git
In das Webserververzeinis kopieren und die URL aufrufen.
Speichern und Laden von Daten
Die ID einer neu gespeicherten Zeile erhalten
if($this->MyModel->save($this->data)){
//the id is here
echo $this->MyModel->id;
}
Internationalisierung
Im Model (erzeugt validation.pot):
public $validationDomain = 'validation';
public $validate = array(
'username' => array(
'alphaNumeric' => array(
'rule' => 'alphaNumeric',
'required' => true,
'message' => 'Alphabets and numbers only',
'last' => false
),
'between' => array(
'rule' => array('between', 5, 15),
'message' => 'Username should be between %d and %d characters'
)
),
);
Im Helper (kommt in default.pot):
private static $subSets = array();
public function __construct() {
self::$subSets = array(
'deviceUpload' => array('icon' => 'icon-broadcast', 'color' => 'bg-amber',
'destination' => array('controller' => 'basedatas', 'action' => 'device_config_load'),
'text' => __('Device upload')
),
);
}
public function getSubSet($name) {
return BaseDataHelper::$subSets[$name];
}