<?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>WIDGET-INFO &#187; Helpers</title>
	<atom:link href="http://blog.widget-info.net/category/cakephp/helpers/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.widget-info.net</link>
	<description>WIDGET-INFOではCakePHPやIPhone情報、その他開発に関する情報を発信</description>
	<lastBuildDate>Tue, 09 Feb 2010 13:44:47 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>CakePHP　「Thlangヘルパー」をリリース</title>
		<link>http://blog.widget-info.net/2010/01/cakephp_thlang_helper/</link>
		<comments>http://blog.widget-info.net/2010/01/cakephp_thlang_helper/#comments</comments>
		<pubDate>Wed, 06 Jan 2010 15:03:38 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Helpers]]></category>
		<category><![CDATA[フォーマット]]></category>

		<guid isPermaLink="false">http://blog.widget-info.net/?p=395</guid>
		<description><![CDATA[CakePHP用のヘルパーで個人的によく利用する日本式のフォーマットに変換するヘルパーです。
業務上でよく使う機能を使いまわしが。。。]]></description>
			<content:encoded><![CDATA[<p>CakePHP用のヘルパーで個人的によく利用する日本式のフォーマットに<br />
変換するヘルパーです。</p>
<p>業務上でよく使う機能を使いまわしが可能なように、作成したヘルパーになります。</p>
<p>くわしくはこちらへ</p>
<p><a title="Thlangヘルパー" href="http://blog.widget-info.net/thlang_helper/" target="_self"><span id="sample-permalink">http://blog.widget-info.net/<span id="editable-post-name" title="クリックしてパーマリンクのこの部分を編集">thlang_helper</span>/</span></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.widget-info.net/2010/01/cakephp_thlang_helper/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CakePHP　「Thcalendar」ヘルパーを公開</title>
		<link>http://blog.widget-info.net/2009/12/cakephp_thcalendar_open/</link>
		<comments>http://blog.widget-info.net/2009/12/cakephp_thcalendar_open/#comments</comments>
		<pubDate>Mon, 28 Dec 2009 22:10:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Helpers]]></category>
		<category><![CDATA[View]]></category>
		<category><![CDATA[カレンダー]]></category>
		<category><![CDATA[祝日判定]]></category>

		<guid isPermaLink="false">http://blog.widget-info.net/?p=385</guid>
		<description><![CDATA[CakePHP用に祝日判定機能など、拡張可能なカレンダーの表示サポートをするヘルパーを作成しました。]]></description>
			<content:encoded><![CDATA[<p>CakePHP用にカレンダーの表示サポートをするヘルパーを作成しました。</p>
<p>Thcalendarヘルパーでは当ブログでも表示されているようなカレンダー形式を自動表示します。<br />
祝日判定機能など、今までの開発をもとに拡張性をいくつかもたせています。</p>
<p>くわしくはこちらへ</p>
<p><a title="Thcalendarヘルパー" href="http://blog.widget-info.net/thcalendar_helper/" target="_self">http://blog.widget-info.net/thcalendar_helper/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.widget-info.net/2009/12/cakephp_thcalendar_open/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Thgoogle　ヘルパーの公開</title>
		<link>http://blog.widget-info.net/2009/10/thgoogle_helper/</link>
		<comments>http://blog.widget-info.net/2009/10/thgoogle_helper/#comments</comments>
		<pubDate>Thu, 15 Oct 2009 23:13:30 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Helpers]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[map]]></category>

		<guid isPermaLink="false">http://blog.widget-info.net/?p=339</guid>
		<description><![CDATA[「Thgoogleヘルパー」を公開します。GoogleMAPを出力するためのJavaScriptコードを自動生成してくれるヘルパーです。]]></description>
			<content:encoded><![CDATA[<p>CakePHPのヘルパーで「Thgoogleヘルパー」を公開します。<br />
以下リンク先で詳細な説明はしますが、GoogleMAPを出力するためのJavaScriptコードを<br />
設定値を与えるだけで自動生成してくれるヘルパーです。</p>
<p>詳しくはこちらを参照ください　「<a title="Thgoogleヘルパー" href="http://blog.widget-info.net/thgoogle_helper/" target="_self">Thgoogleヘルパー</a>」</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.widget-info.net/2009/10/thgoogle_helper/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CakePHP　Helpersのテンプレート</title>
		<link>http://blog.widget-info.net/2009/10/cakephp_helpers_template/</link>
		<comments>http://blog.widget-info.net/2009/10/cakephp_helpers_template/#comments</comments>
		<pubDate>Wed, 07 Oct 2009 22:41:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Helpers]]></category>
		<category><![CDATA[テンプレート]]></category>
		<category><![CDATA[ヘルパー]]></category>

		<guid isPermaLink="false">http://blog.widget-info.net/?p=315</guid>
		<description><![CDATA[CakePHPの自作ヘルパー用のテンプレートを用意してみました。]]></description>
			<content:encoded><![CDATA[<p>CakePHPの自作ヘルパー用のテンプレートを用意してみました。<br />
毎回コーディングをするのが無駄に思えたので、自分用でもありますが。。。</p>
<p>ちなみに利用の際には「Template」の部分を変更してください。<br />
ソースコードは次になります。<br />
<span id="more-315"></span></p>
<pre class="brush:php">class TemplateHelper extends AppHelper{

	//beforeRender()
	function beforeRender() {

	}
	//afterRender()
	function afterRender() {

	}
	//beforeLayout()
	function beforeLayout() {

	}
	//afterLayout()
	function afterLayout() {

	}
}</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.widget-info.net/2009/10/cakephp_helpers_template/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CakePHP　SecurityComponentのTokenについて</title>
		<link>http://blog.widget-info.net/2009/09/cakephp%e3%80%80securitycomponent%e3%81%aetoken%e3%81%ab%e3%81%a4%e3%81%84%e3%81%a6/</link>
		<comments>http://blog.widget-info.net/2009/09/cakephp%e3%80%80securitycomponent%e3%81%aetoken%e3%81%ab%e3%81%a4%e3%81%84%e3%81%a6/#comments</comments>
		<pubDate>Sun, 27 Sep 2009 23:10:37 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Component]]></category>
		<category><![CDATA[Helpers]]></category>
		<category><![CDATA[ヘルパー]]></category>

		<guid isPermaLink="false">http://blog.widget-info.net/?p=246</guid>
		<description><![CDATA[CakePHPでは「SecurityComponent」があり大抵の方は使っているかと思います。その中で「$form->end()」を使うことで]]></description>
			<content:encoded><![CDATA[<p>CakePHPでは「SecurityComponent」があり大抵の方は使っているかと思います。<br />
その中で「$form-&gt;end()」を使うことで、チェック用のTokenが生成されるのですが。。。<br />
個人的には少し困る場合があります。</p>
<p><span id="more-246"></span>というのも、「$form-&gt;end()」を利用するとTokenが生成されるのはいいのですが<br />
そのあとに「&lt;/form&gt;」まで生成されるからです。</p>
<p>HTMLのコーディング上やデザインの都合上、これでは困るという場合があり<br />
変更してみようとしたところ「$form-&gt;submit()」ではTokenを生成してくれません。<br />
CakePHP本体を調べ解決した結果としては。。。</p>
<pre class="brush:php">
echo $form-&gt;secure($form-&gt;fields);
</pre>
<p>で解決しました。まぁFormヘルパーを見ていただければ辿れるのですが（汗<br />
これで任意の箇所に送信するTokenが生成され、「$form-&gt;end()」を利用しなくてすみました。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.widget-info.net/2009/09/cakephp%e3%80%80securitycomponent%e3%81%aetoken%e3%81%ab%e3%81%a4%e3%81%84%e3%81%a6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CakePHP　paginateのAjax化</title>
		<link>http://blog.widget-info.net/2009/09/cakephp_paginate_ajax/</link>
		<comments>http://blog.widget-info.net/2009/09/cakephp_paginate_ajax/#comments</comments>
		<pubDate>Tue, 15 Sep 2009 21:07:13 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Helpers]]></category>
		<category><![CDATA[View]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[paginate]]></category>
		<category><![CDATA[ヘルパー]]></category>

		<guid isPermaLink="false">http://blog.widget-info.net/?p=198</guid>
		<description><![CDATA[CakePHPの基本機能である「paginate」（ページング機能）。この便利な機能をAjax化するにはどうするのか、を今回少し解説してみたいと思います。]]></description>
			<content:encoded><![CDATA[<p>CakePHPの基本機能である「paginate」（ページング機能）。<br />
この便利な機能をAjax化するにはどうするのか、を今回少し解説してみたいと思います。</p>
<p>今では当たり前になりつつあるAjax。多くの方が開発、利用してきて大変便利でもあります。<br />
では「paginate」（ページング機能）の機能を簡単にAjaxしてみるということで、<br />
今回はAjaxには必ず必要なものがあります。<br />
<span id="more-198"></span>まずはAjaxを利用するため<a title="prototype" href="http://www.prototypejs.org/" target="_blank">「prototype.js」のJavaScriptライブラリ</a>が必要となります。<br />
CakePHPのAjaxヘルパーでは必ず必要となるライブラリですので、事前に用意して<br />
View側で利用できるようにしてください。</p>
<p>さてView側の「paginate」（ページング機能）に対してAjax化をして見ましょう。<br />
ここでまずは「$paginator-&gt;sort()」をAjax化するには、第3引数に次の値を指定します。</p>
<pre class="brush:php">$options['updaate']='ID';</pre>
<p>「ID」にはDOMのID名を指定します。（HTMLタグの「id=&#8221;」の部分です）<br />
「$paginator-&gt;sort()」の第1引数はソート名、第2引数はソートする<br />
データベースのフィールド名が指定しているとして次のような記述になります。</p>
<pre class="brush:php">$paginator-&gt;sort('名前','name',array('update'=&gt;'updateerea'));</pre>
<p>上記の場合「名前」のリンクをクリックすると、ソートの結果を「updateerea」のDOMに反映します。<br />
これだけで「$paginator-&gt;sort()」のAjax化は完了です。</p>
<p>通常はAjaxの長いコードを記述する必要があるのですが、簡単なコーディングでAjax化ができてしまいます。<br />
その他に「$paginator-&gt;prev()」と「$paginator-&gt;next()」には第2引数に、<br />
「$paginator-&gt;numbers()」は第1引数にそれぞれ同じように記述することでAjax化にすることができます。</p>
<p>Ajaxは若干JavaScriptの知識も必要ではありますが、Ajaxを少し試して見たい方には簡単に確認できると思います（笑</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.widget-info.net/2009/09/cakephp_paginate_ajax/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CakePHP　paginateの基本</title>
		<link>http://blog.widget-info.net/2009/09/cakephp_paginate/</link>
		<comments>http://blog.widget-info.net/2009/09/cakephp_paginate/#comments</comments>
		<pubDate>Mon, 14 Sep 2009 15:02:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Component]]></category>
		<category><![CDATA[Controller]]></category>
		<category><![CDATA[Helpers]]></category>
		<category><![CDATA[Model]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[paginate]]></category>
		<category><![CDATA[データベース]]></category>

		<guid isPermaLink="false">http://blog.widget-info.net/?p=196</guid>
		<description><![CDATA[CakePHPでは「paginate」（ページング機能）が最初から搭載されています。1.1系では別に用意する必要があったページングが、1.2系では最初から搭載されているのでわざわざコーディングすることなく利用できる]]></description>
			<content:encoded><![CDATA[<p>CakePHPでは「paginate」（ページング機能）が最初から搭載されています。<br />
1.1系では別に用意する必要があったページングが、1.2系では最初から搭載されているので<br />
わざわざコーディングすることなく利用できるのは開発の効率がよくなるものです（笑</p>
<p>さてこの「paginate」（ページング機能）を少し解説していこうかと思います。<br />
といっても自分のメモ的なものもありますが。。。<br />
<span id="more-196"></span><br />
「paginate」（ページング機能）を利用する前に、CakePHPでまず必要な用意はありません（笑<br />
前述したとおり1.2系では最初から利用できるので特別な用意をする必要がありません。<br />
なぜ用意が必要がないかと言うと、必要なものはCakePHP側で先に用意してくれているからです。<br />
例えば、「paginate」（ページング機能）を使うには通常はヘルパーの「Paginator」、ajax化を利用するなら<br />
「ajax」ヘルパーが必要になりますが、CakePHPが各ヘルパーが無いと判断したら、自動で利用できるようになっています。<br />
これは楽です（笑<br />
ではデータベースから取得するにはコントローラーでどう記述するかとなると、<br />
まずは基本は次のようになります。</p>
<pre class="brush:php">$this-&gt;paginate();</pre>
<p>すごく簡単な説明でした（笑<br />
では条件を指定する場合、</p>
<pre class="brush:php">$this-&gt;paginate($conditions);</pre>
<p>またまた簡単です（笑<br />
ここで躓きそうな悩み。。。<br />
モデルを指定していないのに、なぜデータが取得できるか。<br />
それは「paginate」が自動でモデルを内部で処理をし、データベースからデータを取得する<br />
モデルを自動で設定してくれています。<br />
ここでさらに疑問となるのが「Aコントローラー」の「Aモデル」の「paginate」ではなく<br />
「Aコントローラー」から「Bモデル」の「paginate」のデータを取得する場合はどうするのか。</p>
<p>さすがにCakePHPは自動とはいきません（笑<br />
そこで取得するデータのモデルを指定する場合は次のようになります。</p>
<pre class="brush:php">$this-&gt;paginate('取得するモデル名');</pre>
<p>ここで「？」と思う方、はい先ほどの説明でモデルを指定する第1引数には<br />
条件指定を入れている場所でした。<br />
実はCakePHPでは第1引数が文字列の場合は、それをモデル名として処理します。<br />
では条件はどこに記述するのかですが、この場合は第2引数が条件指定の渡しとなります。</p>
<pre class="brush:php">$this-&gt;paginate('取得するモデル名',$conditions);</pre>
<p>これでモデルを指定したり、条件を指定したり自由に「paginate」（ページング機能）を使いこなせると思います。<br />
ちなみに「$conditions」の指定方法は「find」と同じです。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.widget-info.net/2009/09/cakephp_paginate/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>CakePHP　「Thselect」ヘルパーを公開</title>
		<link>http://blog.widget-info.net/2009/09/cakephp_thselect_open/</link>
		<comments>http://blog.widget-info.net/2009/09/cakephp_thselect_open/#comments</comments>
		<pubDate>Sat, 05 Sep 2009 15:12:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Helpers]]></category>
		<category><![CDATA[Model]]></category>
		<category><![CDATA[View]]></category>
		<category><![CDATA[ヘルパー]]></category>

		<guid isPermaLink="false">http://blog.widget-info.net/?p=141</guid>
		<description><![CDATA[CakePHP用のヘルパー「Thselect」を公開しました。MySQLデータベースの「SET型」と「ENUM型」をビューで自動に表示させるためのヘルパーです。]]></description>
			<content:encoded><![CDATA[<p>CakePHP用のヘルパー「Thselect」を公開しました。<br />
MySQLデータベースの「SET型」と「ENUM型」をビューで自動に表示させるためのヘルパーです。</p>
<p>CakePHPでは「SET型」と「ENUM型」をヘルパーでは対応していないために作成しました。<br />
利用方法はこちらのページを参照ください。</p>
<p><a title="Thselectヘルパー" href="http://blog.widget-info.net/thselect_helper/">「Thselect」ヘルパー</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.widget-info.net/2009/09/cakephp_thselect_open/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
