<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Reiten, Schwimmen, Lesen &#187; CakePHP</title>
	<atom:link href="http://www.reitenschwimmenlesen.de/blog/category/cakephp/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.reitenschwimmenlesen.de/blog</link>
	<description>Ein Blog über Technik, Computer, Software, Entwicklung, Gadgets und weitere feine Dinge.</description>
	<lastBuildDate>Tue, 23 Aug 2011 08:01:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>CakePHP Tutorials von IBM updated</title>
		<link>http://www.reitenschwimmenlesen.de/blog/2009/06/19/cakephp-tutorials-von-ibm-updated/</link>
		<comments>http://www.reitenschwimmenlesen.de/blog/2009/06/19/cakephp-tutorials-von-ibm-updated/#comments</comments>
		<pubDate>Fri, 19 Jun 2009 07:45:49 +0000</pubDate>
		<dc:creator>Lasse</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Links]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Einstieg]]></category>
		<category><![CDATA[Hilfe]]></category>
		<category><![CDATA[IBM]]></category>
		<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://www.reitenschwimmenlesen.de/blog/?p=946</guid>
		<description><![CDATA[Die wahrscheinlich bei allen CakePHP Entwickler bekannten IBM Tutorials (zuerst 2006 erschienen) wurden vor 2 Wochen auf den neuesten Stand gebracht. Unter Cook up Web sites fast with CakePHP, Part 1: Getting started findet sich jetzt f&#252;r CakePHP Neulinge ein umfassendes Tutorial das viele Features von CakePHP (u.a. Caching, Security, Ajax) relativ gut beleuchtet und [...]]]></description>
			<content:encoded><![CDATA[<p>Die wahrscheinlich bei allen CakePHP Entwickler bekannten IBM Tutorials (zuerst 2006 erschienen) wurden vor 2 Wochen auf den neuesten Stand gebracht. Unter <a href="http://www.ibm.com/developerworks/opensource/tutorials/os-php-cake1/index.html">Cook up Web sites fast with CakePHP, Part 1: Getting started</a> findet sich jetzt f&#252;r CakePHP Neulinge ein umfassendes Tutorial das viele Features von CakePHP (u.a. Caching, Security, Ajax) relativ gut beleuchtet und sich als Einstieg hervorragend eignet. </p>
<p>via <a href="http://www.pseudocoder.com/archives/2009/06/18/cakephp-digest-16/" class="broken_link">pseudocoder.com</a></p>
<div class="alignleft"><g:plusone href="http://www.reitenschwimmenlesen.de/blog/2009/06/19/cakephp-tutorials-von-ibm-updated/" size="medium" count="true"></g:plusone></div>]]></content:encoded>
			<wfw:commentRss>http://www.reitenschwimmenlesen.de/blog/2009/06/19/cakephp-tutorials-von-ibm-updated/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Kostenfreies CakePHP Buch</title>
		<link>http://www.reitenschwimmenlesen.de/blog/2009/06/18/cakephp-buch/</link>
		<comments>http://www.reitenschwimmenlesen.de/blog/2009/06/18/cakephp-buch/#comments</comments>
		<pubDate>Thu, 18 Jun 2009 13:52:04 +0000</pubDate>
		<dc:creator>Lasse</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Technik]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.reitenschwimmenlesen.de/blog/?p=943</guid>
		<description><![CDATA[Beim Pseudocoder gibt es f&#252;r alle CakePHP Entwickler ein h&#246;chst interessantes kostenfreies CakePHP Buch im PDF Format. For anyone who missed it, I released a free CakePHP book a month ago. Since then it’s been downloaded over 2500 times. I’ve also received some great feedback and have made a bunch of corrections to the code [...]]]></description>
			<content:encoded><![CDATA[<p>Beim <a href="http://www.pseudocoder.com/">Pseudocoder</a> gibt es f&#252;r alle <a href="http://www.rcgmbh.com" title="CakePHP, iPhone, Softwareentwicklung">CakePHP Entwickler</a> ein h&#246;chst interessantes <a href="http://www.pseudocoder.com/free-cakephp-book/">kostenfreies CakePHP Buch</a> im PDF Format. </p>
<blockquote><p>For anyone who missed it, I released a free CakePHP book a month ago. Since then it’s been downloaded over 2500 times. I’ve also received some great feedback and have made a bunch of corrections to the code and grammar. The biggest change is that the table of contents is now links and will jump you right to the section. That’s reason enough alone to grab the updated version. The new permanent home page for the book is <a href="http://www.pseudocoder.com/free-cakephp-book/">here</a>.</p></blockquote>
<div class="alignleft"><g:plusone href="http://www.reitenschwimmenlesen.de/blog/2009/06/18/cakephp-buch/" size="medium" count="true"></g:plusone></div>]]></content:encoded>
			<wfw:commentRss>http://www.reitenschwimmenlesen.de/blog/2009/06/18/cakephp-buch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Debug Informationen in CakePHP</title>
		<link>http://www.reitenschwimmenlesen.de/blog/2009/06/10/debug-informationen-in-cakephp/</link>
		<comments>http://www.reitenschwimmenlesen.de/blog/2009/06/10/debug-informationen-in-cakephp/#comments</comments>
		<pubDate>Wed, 10 Jun 2009 12:27:24 +0000</pubDate>
		<dc:creator>Lasse</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Technik]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Cake]]></category>
		<category><![CDATA[CakepPHP]]></category>
		<category><![CDATA[Debug]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Session]]></category>

		<guid isPermaLink="false">http://www.reitenschwimmenlesen.de/blog/?p=915</guid>
		<description><![CDATA[Debugging von Anwendungen, die auf PHP basieren, ist zwar mit Tools wie Zend / Eclipse leichter geworden als noch vor einigen Jahren, aber manchmal bedarf es auch nur einer einfachen Anzeige von Header-, Session- oder anderen Requestdaten w&#228;hrend der Laufzeit im Frontend. Bei der Entwicklung von CakePHP Anwendungen k&#246;nnen von Haus aus Informationen z.B. zur [...]]]></description>
			<content:encoded><![CDATA[<p>Debugging von Anwendungen, die auf PHP basieren, ist zwar mit Tools wie <a href="http://www.zend.com/en/community/pdt" title="PDT PHP Plugin f&#252;r Eclipse">Zend / Eclipse</a> leichter geworden als noch vor einigen Jahren, aber manchmal bedarf es auch nur einer einfachen Anzeige von Header-, Session- oder anderen Requestdaten w&#228;hrend der Laufzeit im Frontend. </p>
<p>Bei der Entwicklung von CakePHP Anwendungen k&#246;nnen von Haus aus Informationen z.B. zur Datenbankabfrage mithilfe der Konfigurationsvariable debug und des Befehls</p>
<pre class="brush: php; title: ; notranslate">
Configure::write(&quot;debug&quot;, 1);
</pre>
<p>ausgegeben werden. </p>
<p>Es gibt insgesamt 4 Debug Level, die <a href="http://news.softpedia.com/news/Configuration-of-core-php-for-CakePHP-65699.shtml">hier</a> im Kontext einer &#228;lteren CakePHP Version (dort wird die Konstante DEBUG genutzt) folgenderma&#223;en bezeichnet werden: </p>
<blockquote><p>There are 4 levels of debug: 0-production, 1- development, 2- full debug with sql and 3- full debug with sql and dump of the current object. Specifying this setting to a non-zero value will force Cake to print out the results of pr( ) and debug( ) function calls, and stop flash messages from forwarding automatically. In production, the &#8220;flash messages&#8221; redirect after a time interval. With the other debug levels you get to click the &#8220;flash message&#8221; to continue. For example, if you want to set the debug level to &#8220;full debug with sql&#8221;, the line should look like this: define(&#8216;DEBUG&#8217;, 2);</p></blockquote>
<p>Da die Debug Informationen von Cake immer am unteren Seitenende gerendert  und &#8211; sobald man vom CakePHP Standardlayout abweicht &#8211; auch &#228;u&#223;erst h&#228;sslich werden, gibt es bei <a href="http://snook.ca/archives/cakephp/debug_styles/">Snook.ca</a> die folgenden CSS Klassendefinitionen, um diese Infos generell schicker zu gestalten:</p>
<pre class="brush: css; title: ; notranslate">
.cake-sql-log {
	position:fixed;
	top:99%;
	z-index:10;
	width:100%;
	background-color:#000;
	color:#FFF;
	border-collapse:collapse;
}

.cake-sql-log caption {
	background-color:#900;
	color:#FFF;
}

.cake-sql-log:hover {
	top:auto;
	bottom:0;
}

.cake-sql-log td {
	padding:3px;
	border:1px solid #999;
	background-color:#EEE;
	color:#000;
}
</pre>
<p>Wer jetzt noch weitere Informationen braucht (wie oben bereits erw&#228;hnt u.a. zu Sessiondaten, Log-Aktivit&#228;ten, Timings etc.) der ist mit der <a href="http://www.ohloh.net/p/cakephp-debugkit" title="CakePHP DebugKit Toolbar">CakePHP DebugKit Toolbar von Mark Story</a> gut bedient. </p>
<p>Die Toolbar &#8220;versteckt&#8221; sich geradezu absolut positioniert in der rechten oberen Ecke der Webseite und &#246;ffnet sich blei Klick auf ein kleines Icon. </p>
<p>Was sie alles bietet, zeigt sich in den folgenden Screenshots: </p>
<div style="float:left;"><a href="http://www.reitenschwimmenlesen.de/blog/wp-content/uploads/2009/06/debugkittoolbar1-800x527.jpg" rel="lightbox[915]"><img src="http://www.reitenschwimmenlesen.de/blog/wp-content/uploads/2009/06/debugkittoolbar1-150x150.jpg" alt="DebugKit Toolbar in CakePHP" title="DebugKit Toolbar in CakePHP - Hier: Anzeige der Request-Daten" width="150" height="150" class="alignleft size-thumbnail wp-image-918" style="margin-right:2px;" /></a></div>
<div style="float:left;"><a href="http://www.reitenschwimmenlesen.de/blog/wp-content/uploads/2009/06/debugkittoolbar2-800x527.jpg" rel="lightbox[915]"><img src="http://www.reitenschwimmenlesen.de/blog/wp-content/uploads/2009/06/debugkittoolbar2-150x150.jpg" alt="DebugKit Toolbar  in CakePHP - Timings der Prozesse" title="DebugKit Toolbar  in CakePHP - Timings" width="150" height="150" class="alignleft size-thumbnail wp-image-917" style="margin-right:2px;" /></a></div>
<div style="float:left;"><a href="http://www.reitenschwimmenlesen.de/blog/wp-content/uploads/2009/06/debugkittoolbar3-800x332.jpg" rel="lightbox[915]"><img src="http://www.reitenschwimmenlesen.de/blog/wp-content/uploads/2009/06/debugkittoolbar3-150x150.jpg" alt="DebugKit Toolbar - Sessioninhalte, sch&#246;n ausklappbar" title="DebugKit Toolbar - Sessioninhalte" width="150" height="150" class="alignleft size-thumbnail wp-image-916" style="margin-right:0px;" /></a></div>
<div style="clear:both"></div>
<p>Ich binde die Toolbar dynamisch je nach Umgebung auf folgende Art und Weise im app_controller ein: </p>
<pre class="brush: php; title: ; notranslate">
	public function __construct(){
		parent::__construct();
		if(DEVELOPMENT_ENVIRONMENT){
			$this-&gt;components[] = 'DebugKit.Toolbar';
			Configure::write('debug', 2);
		} else {
			Configure::write('debug', 0);
		}
	}
</pre>
<p>Hier pr&#252;fe ich auf die Konstante <em>DEVELOPMENT_ENVIRONMENT</em>, die ich, wie alle anderen Variablen, die global f&#252;r die App zur Verf&#252;gung stehen m&#252;ssen, in der <em>bootstrap.php</em> definiere. Solche Variablen k&#246;nnten eben serverseitig zur Auswahl der entsprechenden Pfade (z.B. f&#252;r Logs oder tempor&#228;re Uploads) oder auch f&#252;r die Auswahl der entsprechenden Datenbankverbindungen herangezogen werden. </p>
<div class="alignleft"><g:plusone href="http://www.reitenschwimmenlesen.de/blog/2009/06/10/debug-informationen-in-cakephp/" size="medium" count="true"></g:plusone></div>]]></content:encoded>
			<wfw:commentRss>http://www.reitenschwimmenlesen.de/blog/2009/06/10/debug-informationen-in-cakephp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CakePHP: Auf Mac OS im Terminal bake ausf&#252;hren</title>
		<link>http://www.reitenschwimmenlesen.de/blog/2009/06/09/cakephp-auf-mac-os-im-terminal-bake-ausfuehren/</link>
		<comments>http://www.reitenschwimmenlesen.de/blog/2009/06/09/cakephp-auf-mac-os-im-terminal-bake-ausfuehren/#comments</comments>
		<pubDate>Tue, 09 Jun 2009 07:36:36 +0000</pubDate>
		<dc:creator>Lasse</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Technik]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Bake]]></category>
		<category><![CDATA[Console]]></category>
		<category><![CDATA[Konsole]]></category>
		<category><![CDATA[Terminal]]></category>

		<guid isPermaLink="false">http://www.reitenschwimmenlesen.de/blog/?p=909</guid>
		<description><![CDATA[Wer auf Mac OS versucht, im Terminal das &#8220;Bake Script&#8221; von CakePHP auszuf&#252;hren, wird wahrscheinlich auf die Problematik sto&#223;en, dass die mitgelieferte PHP Version von Mac OS nicht korrekt das Script ausf&#252;hrt. Hier gibt es &#8211; wie ich gelesen habe &#8211; hundert Ans&#228;tze, das Problem zu umschiffen, der leichteste und praktikabelste ist in meinem Setting [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.reitenschwimmenlesen.de/blog/wp-content/uploads/2009/06/cake-logo.png" alt="CakePHP" title="CakePHP" width="120" height="120" class="aligncenter size-full wp-image-912" /><br />
Wer auf Mac OS versucht, im Terminal das &#8220;<a href="http://cakebaker.42dh.com/2007/05/31/baking-a-bit-faster-with-the-bake-script/">Bake Script</a>&#8221; von <a href="http://www.cakephp.org">CakePHP</a> auszuf&#252;hren, wird wahrscheinlich auf die Problematik sto&#223;en, dass die mitgelieferte PHP Version von Mac OS nicht korrekt das Script ausf&#252;hrt. </p>
<p>Hier gibt es &#8211; wie ich gelesen habe &#8211; hundert Ans&#228;tze, das Problem zu umschiffen, der leichteste und praktikabelste ist in meinem Setting (mit MAMP auf Mac OS) folgender, direkter Aufruf einer anderen PHP Version zum Ausf&#252;hren des PHP Scripts. </p>
<p>Der Aufruf erfolgt in dem Projekt- Konsolenordner (z.B. in meinem Fall <em>/Users/lrheingans/Documents/Workspace/Project_X/cake/console/</em>) </p>
<pre class="brush: plain; title: ; notranslate">
/Applications/MAMP/bin/php5/bin/php cake.php bake
</pre>
<p>Von hier l&#228;uft dann alles wie gewohnt. </p>
<p>Um das Bake Script unter Eclipse ausf&#252;hren zu k&#246;nnen, gibt es auch in der <a href="http://bakery.cakephp.org/articles/view/setting-up-eclipse-to-work-with-cake" title="Set Up Eclipse for Cake">Bakery einige Tutorials</a> (mir war der mini Aufwand allerdings nicht wert, ich mag meine Konsole)</p>
<div class="alignleft"><g:plusone href="http://www.reitenschwimmenlesen.de/blog/2009/06/09/cakephp-auf-mac-os-im-terminal-bake-ausfuehren/" size="medium" count="true"></g:plusone></div>]]></content:encoded>
			<wfw:commentRss>http://www.reitenschwimmenlesen.de/blog/2009/06/09/cakephp-auf-mac-os-im-terminal-bake-ausfuehren/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Internationalisierung mit CakePHP&#8217;s i18n Features</title>
		<link>http://www.reitenschwimmenlesen.de/blog/2009/02/12/internationalisierung-mit-cakephp-und-i18n/</link>
		<comments>http://www.reitenschwimmenlesen.de/blog/2009/02/12/internationalisierung-mit-cakephp-und-i18n/#comments</comments>
		<pubDate>Thu, 12 Feb 2009 09:16:39 +0000</pubDate>
		<dc:creator>Lasse</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Projekte]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Bake]]></category>
		<category><![CDATA[Internationalisierung]]></category>
		<category><![CDATA[Screencasts]]></category>

		<guid isPermaLink="false">http://www.reitenschwimmenlesen.de/blog/?p=763</guid>
		<description><![CDATA[Zu meiner Ank&#252;ndigung, wie die i18n Features von CakePHP richtig eingebunden werden k&#246;nnen, gibt es bei gouranga &#124; CakePHP I18n &#038; l10n ein gut geschriebenes und relativ umfassendes Tutorial. Dort werden die von Cake bereitgestellten Funktionen (den Artikel Localizing your Application gibt es &#252;brigens hier) beschrieben, wie die verschiedenen Strings der .po Dateien aus Cake [...]]]></description>
			<content:encoded><![CDATA[<p>Zu <a href="http://www.reitenschwimmenlesen.de/blog/2009/02/10/syntax-highlighting-in-wordpress-blogs-fuer-cakephp-beitraege/">meiner Ank&#252;ndigung</a>, wie die i18n Features von <a href="http://cakephp.org">CakePHP</a> richtig eingebunden werden k&#246;nnen, gibt es bei <a href="http://www.steffen-goertz.de/2008/05/09/cakephp-i18n-l10n/" class="broken_link">gouranga | CakePHP I18n &#038; l10n</a> ein gut geschriebenes und relativ umfassendes Tutorial. </p>
<p>Dort werden die von Cake bereitgestellten Funktionen (den Artikel <a href="http://book.cakephp.org/view/162/Localizing-Your-Application">Localizing your Application gibt es &#252;brigens hier</a>) beschrieben, wie die verschiedenen Strings der .po Dateien aus Cake heraus aufgerufen werden k&#246;nnen.  </p>
<p>Was in manchen unserer Projekte auch oftmals wichtig war, ist und sein wird:<br />
<strong>Wie k&#246;nnen dynamische Inhalte, also solche aus der Datenbank, internationalisiert werden</strong>? Statische Strings sind mit der .po-File Variante kein Problem &#8211; aber wie sieht es mit dynamischem Content aus?</p>
<p>Ein n&#252;tzliches Tutorial f&#252;r diesen Ansatz findet sich z.b. <a href="http://www.palivoda.eu/2008/04/i18n-in-cakephp-12-database-content-translation/">hier</a> und der dazugeh&#246;rige <a href="http://www.palivoda.eu/2008/04/i18n-in-cakephp-12-database-content-translation-part-2/">Teil 2 hier</a>. Wie die Stolpersteine hier aussehen und wie CakePHP ein Speichern / Updaten von i18n Eintr&#228;gen behandelt kann ich sp&#228;ter erl&#228;utern, grunds&#228;tzlich gibt es bei dieser Herangehensweise eine weitere Tabelle im Datenbankmodell, die folgenderma&#223;en aussieht: </p>
<p><a href="http://www.reitenschwimmenlesen.de/blog/wp-content/uploads/2009/02/i18n-tabelle1.jpg" rel="lightbox[763]"><img src="http://www.reitenschwimmenlesen.de/blog/wp-content/uploads/2009/02/i18n-tabelle1.jpg" alt="CakePHP i18n Tabelle" title="CakePHP i18n Tabelle" width="450" /></a></p>
<p>In dieser Datenbanktabelle werden s&#228;mtliche &#220;bersetzungen der verschiedenen Models gespeichert (die Tabelle kann also ziemlich fix ziemlich &#8220;umfangreich&#8221; werden).</p>
<p>F&#252;r alle, die auf dem Mac den hervorragenden und g&#252;nstigen <a href="http://www.malcolmhardie.com/sqleditor/">SQLEditor</a> nutzen, <a href="http://www.reitenschwimmenlesen.de/blog/wp-content/uploads/2009/02/i18n.sqs">gibt es hier die oben gezeigte SQS Datei</a>, ansonsten kann die Tabelle auch im Terminal angelegt werden, indem man im Verzeichnis /console von Cake folgenden Befehl eingibt:</p>
<p>./cake i18n</p>
<p>[ einige weitere andere Infos dazu auch unter dem <a href="http://bakery.cakephp.org/articles/view/p28n-the-top-to-bottom-persistent-internationalization-tutorial">top-to-bottom-persistent-internationalization-Tutorial auf CakePHP.org zu finden</a> ]</p>
<p>Leider k&#246;nnen <strong><abbr title="HasAndBelongsToMany - eine n:n Beziehung in relationalen Datenbanken">HABTM</abbr> Relationships erst ab Version 1.3</strong> mit dem Translation Behavior von Cake bedient werden, heisst also: Hier muss manuell Hand angelegt werden, sobald HABTM Relationships ins Spiel kommen. </p>
<p><strong>Kleiner Seitenhinweis</strong>:<br />
&#220;ber die Konsole kann bei Cake auch ein komplettes, sog. &#8220;<strong>Baking</strong>&#8221; stattfinden, das anhand der Datenbankkonfiguration das komplette Projekt einmal initial erstellt, mit s&#228;mtlichen Models, Controllern und Views und s&#228;mtlichen <abbr title="Create, Retrieve, Update, Delete"><strong>CRUD</strong></abbr> Funktionen.</p>
<p>Sehr gute, <strong>verschiedene Screencasts zu CakePHP</strong> (Installation, Baking, <br />Scaffolding, &#8230;) finden sich im &#220;brigen sich auf der Webseite von <a href="http://www.davidgolding.net/screencasts">David Golding</a>, seines Zeichens Verfasser des Buches &#8220;Beginning CakePHP&#8221; (das, in meinen Augen, bei weiterm nicht <a href="http://www.amazon.de/gp/product/3897218631?ie=UTF8&#038;tag=kleieinundgro-21&#038;linkCode=as2&#038;camp=1638&#038;creative=19454&#038;creativeASIN=3897218631">mit dem CakePHP Buch von O&#8217;Reilly</a> mithalten kann).</p>
<div class="alignleft"><g:plusone href="http://www.reitenschwimmenlesen.de/blog/2009/02/12/internationalisierung-mit-cakephp-und-i18n/" size="medium" count="true"></g:plusone></div>]]></content:encoded>
			<wfw:commentRss>http://www.reitenschwimmenlesen.de/blog/2009/02/12/internationalisierung-mit-cakephp-und-i18n/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Syntax Highlighting in WordPress Blogs f&#252;r CakePHP Beitr&#228;ge</title>
		<link>http://www.reitenschwimmenlesen.de/blog/2009/02/10/syntax-highlighting-in-wordpress-blogs-fuer-cakephp-beitraege/</link>
		<comments>http://www.reitenschwimmenlesen.de/blog/2009/02/10/syntax-highlighting-in-wordpress-blogs-fuer-cakephp-beitraege/#comments</comments>
		<pubDate>Tue, 10 Feb 2009 21:09:02 +0000</pubDate>
		<dc:creator>Lasse</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Medien]]></category>
		<category><![CDATA[Projekte]]></category>
		<category><![CDATA[Technik]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Entwicklungsumgebung]]></category>
		<category><![CDATA[i18n]]></category>
		<category><![CDATA[Pagination]]></category>
		<category><![CDATA[SyntaxHighlighter]]></category>

		<guid isPermaLink="false">http://www.reitenschwimmenlesen.de/blog/?p=725</guid>
		<description><![CDATA[Nach anf&#228;nglich gro&#223;en T&#246;nen ist zwar weiterhin nicht viel passiert, aber wo ich jetzt ein WordPress Plugin um in einem Beitrag Syntax Highlighting mitzuliefern gefunden habe kann jetzt die Artikelflut losgehen. Durch umfangreiche Arbeiten mit CakePHP in den letzten Wochen k&#246;nnten verschiedene Themen aus unterschiedlichsten Bereichen interessant sein, die ich ggfls. in den n&#228;chsten Tagen [...]]]></description>
			<content:encoded><![CDATA[<p>Nach <a href="http://www.reitenschwimmenlesen.de/blog/2008/12/09/das-blog-ist-lahm-was-ist-das-los/">anf&#228;nglich gro&#223;en T&#246;nen</a> ist zwar weiterhin nicht viel passiert, aber wo ich jetzt ein WordPress Plugin um in einem <a href="http://erik.range-it.de/wordpress/plugins/syntaxhighlighter/">Beitrag Syntax Highlighting mitzuliefern</a> gefunden habe kann jetzt die Artikelflut losgehen.  </p>
<p>Durch <a href="http://www.mercedes-benzfashionweeks.com" title="sei es mit der Newsroom Seite f&#252;r die Mercedes Benz Fashionweek Berlin">umfangreiche Arbeiten</a> <a href="http://beta.docpool.org" title="...oder mit Docpool">mit CakePHP</a> in den letzten Wochen k&#246;nnten verschiedene Themen aus unterschiedlichsten Bereichen interessant sein, die ich ggfls. in den n&#228;chsten <del datetime="2009-02-10T20:53:01+00:00">Tagen</del> Wochen mal vorstellen k&#246;nnte:</p>
<ul>
<li>Wie sieht eine sinnvolle Entwicklungsumgebung in Teams von Entwicklern aus? Wie kann man also mit Eclipse und SVN und anderen Techniken besser und schneller gemeinsam mit weniger Fehlern entwickeln.</li>
<li>Wie kann ich die CakePHP config so anpassen, dass ein Deployment auf unterschiedlichen Servern sinnvoll funktioniert (z.B. f&#252;r verschiedene Server f&#252;r Development, Testing und Live)</li>
<li>Wie nutzt man die <a href="http://book.cakephp.org/view/172/Authentication">CakePHP Auth Component</a> richtig (immer wieder ein heisses Thema)?</li>
<li>Wie binde ich die <a href="http://book.cakephp.org/view/163/Internationalization-in-CakePHP">i18n Features von CakePHP</a> richtig ein?</li>
<li>Wie kann man die <a href="http://book.cakephp.org/view/164/Pagination">Pagination von CakePHP</a> mit weiteren, eigenen Parametern oder Filtern versorgen?</li>
<li>Wie kann ich die Performance von CakePHP Projekten weiter verbessern?</li>
</ul>
<p>Falls bei dem ein oder anderen Thema besonderes Interesse bestehen sollte &#8211; immer her mit Kommentaren.</p>
<div class="alignleft"><g:plusone href="http://www.reitenschwimmenlesen.de/blog/2009/02/10/syntax-highlighting-in-wordpress-blogs-fuer-cakephp-beitraege/" size="medium" count="true"></g:plusone></div>]]></content:encoded>
			<wfw:commentRss>http://www.reitenschwimmenlesen.de/blog/2009/02/10/syntax-highlighting-in-wordpress-blogs-fuer-cakephp-beitraege/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CakePHP: Nach Ajax Reload funktionieren Ajax Links nicht mehr</title>
		<link>http://www.reitenschwimmenlesen.de/blog/2008/12/09/cakephp-nach-ajax-reload-funktionieren-ajax-links-nicht-mehr/</link>
		<comments>http://www.reitenschwimmenlesen.de/blog/2008/12/09/cakephp-nach-ajax-reload-funktionieren-ajax-links-nicht-mehr/#comments</comments>
		<pubDate>Tue, 09 Dec 2008 13:29:41 +0000</pubDate>
		<dc:creator>Lasse</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Projekte]]></category>
		<category><![CDATA[Technik]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[AJAX]]></category>
		<category><![CDATA[Ajax Helper]]></category>
		<category><![CDATA[Link]]></category>
		<category><![CDATA[Prototype]]></category>
		<category><![CDATA[Updater]]></category>

		<guid isPermaLink="false">http://www.reitenschwimmenlesen.de/blog/2008/12/09/cakephp-nach-ajax-reload-funktionieren-ajax-links-nicht-mehr/</guid>
		<description><![CDATA[Wer mit dem gro&#223;artigen PHP Framework CakePHP arbeitet, kommt schnell in den Genuss des dort integrierten AJAX Helpers. Hierbei k&#246;nnen einzelne Div Inhalte einer Seite relativ problemlos mit aktualisierten Daten ausgetauscht werden. Im Hintergrund wird hier von CakePHP auf das Prototype Javascript Framework aufgesetzt (konkret: Ajax.Updater). Im Grunde funktioniert das im Beispiel eines Formulars folgenderma&#223;en: [...]]]></description>
			<content:encoded><![CDATA[<p>Wer mit dem gro&#223;artigen PHP Framework <a href="http://www.CakePHP.org" title="CakePHP">CakePHP</a> arbeitet, kommt schnell in den Genuss des dort integrierten AJAX Helpers.</p>
<p>Hierbei k&#246;nnen einzelne Div Inhalte einer Seite relativ problemlos mit aktualisierten Daten ausgetauscht werden. Im Hintergrund wird hier von CakePHP auf das <a href="http://www.prototypejs.org">Prototype</a> Javascript Framework aufgesetzt (konkret: <a href="http://www.prototypejs.org/api/ajax/updater">Ajax.Updater</a>).</p>
<p>Im Grunde funktioniert das im Beispiel eines Formulars folgenderma&#223;en: </p>
<p>echo $ajax->form(&#8216;sendMessage/&#8217;.$details['Nachricht']['id'],<br />
	&#8216;post&#8217;,<br />
	array(&#8216;update&#8217; => &#8216;message-reply&#8217;.$details['Nachricht']['id'],<br />
		&#8216;before&#8217;=>&#8217;toggleViewOfDiv(\&#8217;message-reply&#8217;.$details['Nachricht']['id'].&#8217;\')&#8217;,<br />
		&#8216;complete&#8217; => &#8216;new Ajax.Updater(\&#8217;all_messages_ajax\&#8217;, \&#8217;/news/messagebox\&#8217;,<br />
		{ evalScripts : true });&#8217;));</p>
<p>Wenn es sich nicht um ein Formular handelt, kann auch im $ajax->link im Optionsarray manuell der Ajax.Updater als Argument f&#252;r die Option &#8220;complete&#8221; aufgerufen werden:</p>
<p>echo $ajax->link(__(&#8216;Lesen&#8217;, true),<br />
	&#8216;getMessageBody/&#8217;.$news['Nachricht']['id'],<br />
	array(&#8216;complete&#8217;=>&#8217;new Ajax.Updater(\&#8217;all_messages_ajax\&#8217;, \&#8217;/news/messagebox\&#8217;,<br />
		{ evalScripts : true });&#8217;,<br />
		 &#8216;update&#8217;=>&#8217;message-&#8217;.$news['News']['id']));</p>
<p>Da bei einigen Leuten die nach dem Submit gerenderte Seite nicht mehr auf die durch $ajax->link generierten Links reagiert, muss als Option f&#252;r den Ajax.Updater &#8220;<strong>evalScripts: true&#8221;</strong> &#252;bergeben werden.   </p>
<div class="alignleft"><g:plusone href="http://www.reitenschwimmenlesen.de/blog/2008/12/09/cakephp-nach-ajax-reload-funktionieren-ajax-links-nicht-mehr/" size="medium" count="true"></g:plusone></div>]]></content:encoded>
			<wfw:commentRss>http://www.reitenschwimmenlesen.de/blog/2008/12/09/cakephp-nach-ajax-reload-funktionieren-ajax-links-nicht-mehr/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

