2008”N08ŒŽ28“ú

–|–󂠂肪‚Æ‚¤‚²‚�L‚��‚Ü‚·B(book.cakephp.org/ja)

http://book.cakephp.org/ja
¡“ú‚ÌRSS‚ðŒ©‚½‚Ƃ�}‚ëA
nuto ‚³‚ñ‚Æ bobchin‚³‚ñ‚É‚æ‚Á‚Ä–|–󂪒…ŽÀ‚ɐi‚ñ‚ł��‚é‚悤‚Å‚·B
‚�}‚̐”ƒ–ŒŽA‘¼‚Ì•û‚à–|–ó‚ÉŽQ‰Á‚µ‚�N‚ç‚ê‚é‚ÆŽv‚��‚Ü‚·B
‚��‚ë‚��‚ë‚Ȑl‚Ì‹¦—͂ł�}‚́g–{h‚ª“Ç‚Ý‚â‚·‚­‚È‚Á‚��‚Ü‚·‚ˁ`B
‚Ç‚¤‚à‚ ‚肪‚Æ‚¤‚²‚�L‚��‚Ü‚·B

‚à‚¤AŽ†‚̏‘Ð‚ðw“ü‚µ‚È‚­‚Ä‚à‚æ‚��Žž‘オ‚»‚�}‚܂ŁcB
posted by SDozono at 10:36| “Œ‹ž 🌁| Comment(0) | TrackBack(1) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é

2008”N05ŒŽ30“ú

‚¤[‚ñB

‚Ý‚È‚³‚ñ‚͂�}‚ê‚ð‚Ç‚¤•]‰¿‚µ‚Ü‚·H

Google Trends - Trend history in Japan

trend2008.PNG



ƒ‰ƒxƒ‹Fcakephp
posted by SDozono at 14:56| “Œ‹ž 🌁| Comment(0) | TrackBack(0) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é

2008”N05ŒŽ26“ú

Ticket‘å•Ð•t‚¯

‚ ‚ñ‚È‚ÉŽR‚Ù‚Ç‚ ‚Á‚½Ticket‚ª‚Ý‚ñ‚ȕЕt‚��‚��‚éI

https://trac.cakephp.org/report/1

‚�N”æ‚ê—l‚Å‚·B
ƒ‰ƒxƒ‹Fcakephp
posted by SDozono at 13:57| “Œ‹ž ☀| Comment(0) | TrackBack(0) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é

2008”N05ŒŽ25“ú

DBƒ}ƒCƒOƒŒ[ƒVƒ‡ƒ“‚©ADBƒXƒL[ƒ}ƒVƒXƒeƒ€‚©

CakePHP‚̃[ƒŠƒ“ƒOƒŠƒXƒg‚Å”M‚��‹c˜_‚ª‚©‚킳‚ê‚��‚½‚Ì‚ÅŽQl‚܂ŁB

Is migrations support planned for Cake?
http://groups.google.com.ar/group/cake-php/browse_thread/thread/1bde4426444fda5c/

‚¿‚Ȃ݂ɁA‰º‹L‚̃uƒƒO‚ÅŒ¾‹y‚³‚ê‚��‚½‚Ì‚Å’m‚è‚Ü‚µ‚½B
Juanfgsfs Blog
Rails Migrations vs CakePHP Schemas
http://juanfgs.wordpress.com/2008/05/23/rails-migrations-vs-cakephp-schemas/

migration‚ ‚½‚è‚ÌŒoˆÜ‚ð‘‚ï¿½ï¿½‚�N‚­‚ƁA

‚Pj‚Ü‚¸ACakePHP‚ɂ͍ŏ‰migration‚̂悤‚È‚à‚Ì‚ª•W€‚ł͑��Ý‚µ‚È‚©‚Á‚½B
‚QjJoelmoss‚ªŒÂlƒvƒƒWƒFƒNƒg‚Æ‚µ‚āAPHPƒ}ƒCƒOƒŒ[ƒVƒ‡ƒ“‚ðì‚èŽn‚ß‚½B
(CakePHP migration)
‚Rj‚µ‚©‚µAYAML‚ðŽg—pBPEAR‚Ɉˑ��A‚È‚Ç‚ÌŽd—l‚Ì‚½‚߁ACakePHP‚̃RƒAŠJ”­ƒ`[ƒ€‚©‚ç‚Í”ñŒö”F‚Ì‚Ü‚Ü‚¾‚Á‚½B
‚SjCakePHP 1.2 ‚Å schemaƒ^ƒXƒN‚ªŠJ”­‚³‚ê‚éB
‚TjJoelmoss‚Ìmigration‚ªAYAMLˆÈŠO‚É‚àAPHP”z—ñ‚ł̃f[ƒ^Œ`Ž®‚ɑΉžAPEAR‚É”ñˆË‘��‚É‚·‚éì‹Æ’†B

i¡A‚�}‚Ì‚ ‚½‚èBj

‚Ƃ��‚¤‚Ƃ�}‚ë‚Å‚·B‚ŁA‚�}‚ÌML‚ł́A"ƒ}ƒCƒOƒŒ[ƒVƒ‡ƒ“‚ƃXƒL[ƒ}ƒVƒXƒeƒ€A‚Ç‚Á‚¿‚ª‚��‚��‚́H"‚Ƃ��‚¤‹c˜_‚ªŒð‚킳‚ê‚��‚Ü‚·B

Dr. Tarique SaniiCheeseCakeƒvƒƒWƒFƒNƒgŽåÉj‚́Au‚»‚ê‚̓IƒŒƒ“ƒW‚ƃŠƒ“ƒS‚ð”ä‚�~‚��‚é‚悤‚È‚à‚̂ŁAƒRƒ“ƒZƒvƒgŽ©‘Ì‚ªˆá‚¤‚Ƃ��‚¤‚�}‚Ƃł��‚��‚ñ‚��‚á‚Ȃ��‚©v‚ÆŒ¾‚Á‚Ă܂Ƃ߂悤‚Æ‚µ‚��‚Ü‚·B

ŠÈ’P‚ÉŒ¾‚¤‚ƁA

migration: •ÏXî•ñ‚ð·•ª‚Æ‚µ‚Ä‹L˜^‚µ‚Ä‚ä‚­
schema: ‚»‚ÌŽž“_‚Å‚ÌDB\‘��‚̃XƒiƒbƒvƒVƒ‡ƒbƒg‚ð‹L˜^‚µ‚Ä‚ä‚­

‚Ƃ��‚¤‚à‚̂ŁAmigration‚ªŒ™‚��ischema–œÎj”h‚́AuDB\‘��‚ð•Ï‚¦‚邽‚тɂ��‚¿‚��‚¿ƒR[ƒh‚ð‘‚­‚Ì‚ª–Ê“|‚¾v‚Ƃ��‚¤ˆÓŒ©‚à•ª‚©‚ç‚Ȃ��‚Å‚à‚Ȃ��‚Å‚·B“Á‚ÉphpMyAdmin‚ðŽg‚Á‚��‚éê‡‚Ȃǂ́ADB‚̕ύX‚ª‰õ“K‚É‚Å‚«‚Ä‚µ‚܂��‚Ü‚·‚©‚ç‚ˁBphpMyAdmin‚ª•ÏX—š—ðˆê——‚Ý‚½‚��‚È‚à‚Ì‚ðo—Í‚µ‚Ä‚­‚ê‚Ä‚à‚��‚��‚©‚à‚Å‚·‚ˁB

‚¿‚È‚Ý‚ÉŽ„‚͍¡‚̂Ƃ�}‚ëASQLyog‚̃Gƒ“ƒ^[ƒvƒ‰ƒCƒY”Å‚Å–ž‘«‚µ‚Ä‚µ‚Ü‚Á‚��‚Ü‚·B

www.webyog.com

Structure Synchronization tool‚ª•Ö—˜‚·‚��‚È‚ñ‚Å‚·‚æBphpMyAdmin‚Æ‘g‚ݍ‡‚킹‚é‚ƁAˆá‚¤ƒzƒXƒg‚ÌDB\‘��‚𐔃NƒŠƒbƒN‚ŃVƒ“ƒNƒƒiƒCƒY‚Å‚«‚Ü‚·Bƒf[ƒ^‚̃Vƒ“ƒNƒƒiƒCƒY‚àg‚�N‚»‚ç‚­h‚¤‚Ü‚­‚ä‚­‚ÆŽv‚��‚Ü‚·B‚µ‚΂炭‘O‚Ü‚Å‚ÍPHP‚̃gƒ“ƒlƒ‹—pƒtƒ@ƒCƒ‹‚ÉŽè‚ð‰Á‚¦‚��‚Ü‚µ‚½‚ªB
‚�}‚̃c[ƒ‹AÅ‰‚̍ ‚Í‘½Œ¾Œê‘Ήž‰»‚ɂ‚��‚ÄŒ‹\AŒû‚ðo‚µ‚½‚èŠJ”­‚É‚¿‚á‚¿‚á‚ð“ü‚ꂽ‚肵‚��‚½‚ñ‚Å‚·‚ªA‚»‚Ì‚¤‚¿AŽg‚¦‚é‹@”\‚¾‚¯Žg‚¦‚΂��‚��‚©A‚Ƃ��‚¤‹C‚É‚È‚Á‚āA‚»‚¤‚��‚¤Žg‚��•û‚ð‚µ‚Ä‚ï¿½ï¿½‚éƒc[ƒ‹‚Å‚·B“ú–{Œê‚Å‚Í100%‚Ì“®ì‚ðŠú‘Ò‚µ‚È‚­‚Ä‚à‚��‚��A‚Ƃ��‚¤l‚Í•Ö—˜‚ÉŽg‚¦‚é‚ÆŽv‚��‚Ü‚·B
ƒ‰ƒxƒ‹Fcakephp SCHEMA migration
posted by SDozono at 10:23| “Œ‹ž ☔| Comment(0) | TrackBack(1) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é

2008”N05ŒŽ19“ú

wildflower

‚�NA‚�}‚ê‚͂��‚��‚©‚àB

Wildflower - CakePHP CMS
Content management system and application platform build on CakePHP framework and jQuery Javascript library.
http://wf.klevo.sk/


‚Æ‚è‚ ‚¦‚¸ƒ_ƒEƒ“ƒ[ƒh‚µ‚ăR[ƒh‚ðŒ©‚½‚¾‚¯‚Å‚·‚ªA’P‚Ȃ邽‚½‚«‘ä‚Æ‚µ‚Ä‚Å‚Í‚È‚­AŽÀÛ‚ÉŽg‚¦‚éƒR[ƒh‚ª‚��‚ë‚��‚ë“ü‚Á‚��‚é‚Ý‚½‚��‚Å‚·B
ƒ‰ƒxƒ‹Fcakephp CMS
posted by SDozono at 10:22| “Œ‹ž 🌁| Comment(4) | TrackBack(0) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é

2008”N05ŒŽ16“ú

CakePHP‚ÅRESTful

CakePHP 1.1‚Å‚ÌRESTful‚͉º‹L‚É‹LŽ–‚ª‚ ‚è‚Ü‚µ‚½B

RESTful Web Services With CakePHP
http://bakery.cakephp.org/articles/view/150

¡‰ñA1.2‚ÌRouter‚ÅREST‚ðˆµ‚¤•û–@‚ªAphp|architect's C7Y‚É“Še‚³‚ê‚��‚Ü‚·B

REST and Resource Handling with CakePHP
by Nate Abele (2008-05-14)
http://c7y.phparch.com/c/entry/1/art,cakephp-rest

‚¿‚Ȃ݂ɁAŒ»Ý‚ÌCakePHPƒŠ[ƒhƒfƒxƒƒbƒp[‚É‚æ‚鎷•M‚Å‚·B

https://trac.cakephp.org/timeline
‚ðŒ©‚é‚Æ•ª‚©‚è‚Ü‚·‚ªA¡‚́A‚Ý‚ñ‚È‚ªu‚æ‚Á‚Ä‚½‚©‚Á‚āv1.2‚̃ŠƒŠ[ƒX‚Ì‚½‚ß‚É‚ª‚µ‚ª‚µ‚ÆTicket‚𐮗’†‚Å‚·B

Ž„‚͂Ƃ��‚¤‚ƁAŽ©•ª‚ÌŽdŽ–‚ð‚ª‚µ‚ª‚µ‚Ƃ�}‚È‚µ‚��‚Ü‚·B
Cake‚ðŽg‚¤‚Ù‚¤‚ÅŽèˆê”t‚É‚È‚Á‚Ä‚µ‚Ü‚Á‚��‚Ü‚·‚ªA–{“–‚Í book.cakephp.org ‚Ì–ó‚ði‚ß‚é‚Ì‚ªŽ©•ª‚Ì–ðŠ„‚©‚È‚Ÿ‚Æ‚àŽv‚Á‚��‚Ü‚·B‚½‚¾A—Ê‚ª‚¸‚��‚Ô‚ñ‚ ‚è‚Ü‚·‚̂ŁA‚í‚ê‚�}‚»‚Í‚ÆŽv‚¤“ú–{Œêƒ†[ƒU‚́Abook.cakephp.org‚Ì–|–ó‚ōvŒï¿½ï¿½‚µ‚Ä‚­‚¾‚³‚��II
posted by SDozono at 10:15| “Œ‹ž 🌁| Comment(0) | TrackBack(0) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é

2008”N02ŒŽ26“ú

CakePHP1.2‚ÌŠÈ’P‘Û‰»

CakePHP1.2‚Ìbake‚ÅŽ©“®ï¿½ï¿½ï¿½ï¿½‚µ‚½‰æ–ʂ́A‰æ–Ê‚É•\Ž¦‚³‚ê‚é•ï¿½ï¿½Žš—ñ‚ª__('•ï¿½ï¿½Žš—ñ') ‚ň͂܂ê‚��‚Ü‚·B‚�}‚ê‚́AŠÈ’P‚É‘½Œ¾Œê–|–󂪂ł«‚é‚悤‚É”z—��‚³‚ê‚��‚é‚©‚ç‚Å‚·B

‚�}‚�}‚ð–³—‚â‚è“ú–{Œê‚ɏ‘‚«Š·‚¦‚Ä‚à“ú–{Œê‰»‚Í‚Å‚«‚Ü‚·‚ªA‚¹‚Á‚©‚­‚Ȃ̂ŁAÅ‰‚©‚獑Û‰»‚ð‚É‚ç‚ñ‚ŁApoƒtƒ@ƒCƒ‹‚ðï¿½ï¿½ï¿½ï¿½A•ÒW‚µ‚Ä“ú–{Œê‰»‚ði‚ß‚Ä‚à‚æ‚��‚̂ł͂Ȃ��‚©A‚ÆŽv‚��‚Ü‚·B

CakePHP1.2‚Ígettext‚ðŽg—p‚µ‚½–|–ó‚Ɨ��‚ê‚Í“¯‚��‚Å‚·B
http://ja.wikipedia.org/wiki/Gettext

i‚PjƒAƒvƒŠ‚ÅŽg—p‚·‚é•ï¿½ï¿½ŽšƒŠƒ\[ƒXiƒƒbƒZ[ƒW—ށj‚́A__('')‚ň͂Þ

@‚�}‚¤‚µ‚�N‚­‚ƁAŽ©“®“I‚É–|–óƒtƒ@ƒCƒ‹‚ðì‚Á‚Ä‚­‚ê‚é‚̂ł�}‚̃‹[ƒ‹‚ÍŽç‚è‚Ü‚µ‚傤B‚¿‚Ȃ݂ɁA’†‚̃ƒbƒZ[ƒW‚͉pŒê‚ōì‚è‘�}‚¯‚é‚Ì‚ª‚æ‚��‚ÆŽv‚��‚Ü‚·B

@*’Ç‹L* ’l‚ð‘ã“ü‚·‚é‚悤‚ȏꍇ‚ɂ́A
$message = __('Message test!', true);
echo __('testtest', true);
‚È‚Ç‚Æ‚Å‚«‚Ü‚·B@

i‚Qjconsole‚©‚çA–|–󃊃\[ƒXƒtƒ@ƒCƒ‹‚ðìï¿½ï¿½

consoleƒtƒHƒ‹ƒ_‚ɍ~‚è‚āA
> cake i18n
‚ðŽÀs‚µ‚Ü‚·B

Welcome to CakePHP v1.2.0.6311 beta Console
---------------------------------------------------------------
What is the full path you would like to extract?
Example: C:\Program Files\xampp\htdocs\cake12\myapp
[Q]uit
[Q] >

‚Æ•\Ž¦‚³‚ê‚é‚̂ŁAŽ©•ª‚̃AƒvƒŠƒP[ƒVƒ‡ƒ“‚̃pƒX‚ðŽw’肵‚Ü‚µ‚傤B

[Q] > C:\Program Files\xampp\htdocs\ƒAƒvƒŠƒtƒHƒ‹ƒ_
What is the full path you would like to output?
Example: C:\Program Files\xampp\htdocs\ƒAƒvƒŠƒtƒHƒ‹ƒ_\locale
[Q]uit
[C:\Program Files\xampp\htdocs\ƒAƒvƒŠƒtƒHƒ‹ƒ_\locale] >
I18n Shell
---------------------------------------------------------------
[E]xtract POT file from sources
[I]nitialize i18n database table
[H]elp
[Q]uit
What would you like to do? (E/I/H/Q)
>

‚�}‚�}‚ŁAE‚ð‘I‘ð‚·‚é‚ƁACake‚ªŽ©•ª‚ŃvƒƒWƒFƒNƒgƒtƒ@ƒCƒ‹‚𒲂�~‚Ü‚í‚Á‚āA–|–󃊃Xƒgˆê——‚ðìï¿½ï¿½‚µ‚Ü‚·BlocaleƒtƒHƒ‹ƒ_‚Ì’†‚É‚ ‚éAdefault.pot ƒtƒ@ƒCƒ‹‚̓eƒLƒXƒgƒtƒ@ƒCƒ‹‚Ȃ̂ŁA“K“–‚É’†g‚ðŒ©‚Ä‚Ý‚Ü‚µ‚傤B•ï¿½ï¿½Í‚ŏ‘‚­‚Æ–Ê“|‚»‚¤‚Å‚·‚ªAˆÄŠOA’Z‚��ŽžŠÔ‚Å‚Å‚«‚ ‚ª‚Á‚Ä‚µ‚܂��‚Ü‚·B

i‚Rj“ú–{ŒêƒŠƒ\[ƒXƒtƒHƒ‹ƒ_‚̍ìï¿½ï¿½

\locale\jpn\LC_MESSAGES ‚Ƃ��‚¤ƒtƒHƒ‹ƒ_‚ðìï¿½ï¿½‚µAi‚Qj‚��ï¿½ï¿½‚³‚ꂽƒtƒ@ƒCƒ‹‚ðA"default.po"‚Ƃ��‚¤–¼‘O‚É‚µ‚ăRƒs[‚µ‚Ü‚·B

i‚Sj–|–ó

Windowsã‚Å‚ ‚ê‚΁Apoedit‚ª—ǂ��‚̂ł͂Ȃ��‚©A‚ÆŽv‚��‚Ü‚·B

Poedit is cross-platform gettext catalogs (.po files) editor.
http://www.poedit.net/

–|–󃁃‚ƒŠ‚à‚‚��‚½A‚©‚µ‚�}‚��H–|–󃊃\[ƒXê—pƒGƒfƒBƒ^‚Å‚·B[ƒJƒ^ƒƒO]Ë[Ý’è]‚©‚çA‚�}‚Ì–|–óƒtƒ@ƒCƒ‹‚ÉŠÖ‚·‚éî•ñ‚ð’ljÁ‚Å‚«‚Ü‚·‚ªA‚»‚̍ہAm•¡”Œ`Fn‚Ƃ��‚¤‚Ƃ�}‚ë‚ðA
nplurals=1; plural=0;
‚Æ‚µ‚�N‚«‚Ü‚µ‚傤B
‚ ‚Ƃ́AƒŠƒ\[ƒX‚ð“K“–‚ɖ󂵂Ă݂܂·B

i‚Tjƒuƒ‰ƒEƒU‚ÅŠm”FB

“K“–‚ɖ󂵂½‚Ƃ�}‚ë‚ŁApoƒtƒ@ƒCƒ‹‚ðã‘‚«•Û‘��‚µ‚Ü‚·B‚Å‚«‚½‚Ƃ�}‚ë‚ŁAŽ©•ª‚ÌCakePHPƒAƒvƒŠƒP[ƒVƒ‡ƒ“‚ð“®‚©‚µ‚Ä‚Ý‚Ü‚µ‚傤BŸŽè‚É“ú–{Œê‰»‚³‚ê‚��‚Ü‚·B‚�}‚ê‚́AHTTP_ACCEPT_LANGUAGE‚Ì’l‚ðŒ©‚ÄAŽ©“®‚Ő؂è‘Ö‚¦‚��‚é‚©‚ç‚Å‚·B

‚��‚á‚ A‚�}‚̐ݒè‚ðŽ©•ª‚ÅŒˆ‚ß‚½‚��ê‡‚É‚Í‚Ç‚¤‚·‚é‚©A‚Ƃ��‚¤‚ƁA‚ǂ�}‚©‚Ì beforeFilter() ‚ȂǂɁA

Configure::write('Config.language',"en");

‚Ə‘‚��‚�N‚­‚ƁA‹­ï¿½ï¿½“I‚ÉŒ¾Œê‚ðŽw’è‚Å‚«‚Ü‚·B

‚¿‚Ȃ݂ɁAV‚µ‚��•ï¿½ï¿½Žš—ñ‚ðƒy[ƒW‚ɒljÁ‚µ‚½ê‡‚ɂ́A(2)‚ð‚à‚¤ˆê“xŽÀs‚·‚é‚ƁAÅV‚Ìpotƒtƒ@ƒCƒ‹‚ªì‚ç‚ê‚Ü‚·B‚»‚ê‚©‚çApoedit‚́mƒJƒ^ƒƒOnËmPOTƒtƒ@ƒCƒ‹‚ðŒ³‚ÉXV‚µ‚Ü‚·n‚ð‘I‘ð‚µAV‚µ‚­‚Å‚«‚½gpotƒtƒ@ƒCƒ‹h‚ðŽw’è‚·‚é‚ƁAV‚µ‚­‰Á‚í‚Á‚½•ï¿½ï¿½Žš—ñ‚ðŽ©“®“I‚ɁA¡‚ ‚époƒtƒ@ƒCƒ‹‚ÉŽæ‚荞‚ñ‚Å‚­‚ê‚Ü‚·B

¦‘Û‰»•ï¿½ï¿½Žš—ñ‚ðDB‚ɕۑ��‚µ‚½‚��A‚Ƃ��‚¤ê‡‚ɂ́A
pm11op ‚̃uƒƒO
cake_1.2 pre-beta ‚Å‚Ì‘½Œ¾Œê‘Ήž‚̃ƒ‚
‚Æ‚©A
GoogleGroup
i18n translation in db tables - how to do this like Symfony?
‚È‚Ç‚ª—ǂ��‚̂ł͂Ȃ��‚©A‚ÆŽv‚��‚Ü‚·B

‚�}‚Ì‚ ‚½‚èA1.2‚©‚ç‚Í–{Ši“I‚ȍ‘Û‰»ƒAƒvƒŠƒP[ƒVƒ‡ƒ“‚ªì‚è‚â‚·‚­‚È‚Á‚��‚é‚ÆŽv‚��‚Ü‚·BŒ»óAkelos‚́Au‚Ü‚ŸPHP‚¾‚©‚ç”z—ñƒx[ƒX‚Ì–|–óƒtƒ@ƒCƒ‹‚ł��‚��‚©v‚Ƒ˦‚µ‚��‚éiHj‚ñ‚Å‚·‚ªACake‚́Apoƒtƒ@ƒCƒ‹‚Å‚Ì–|–󃊃\[ƒX‚É‚È‚Á‚��‚é‚̂ŁAŠeŽí‚ÌŠO•”ƒc[ƒ‹‚ðŽg‚Á‚½‚èA‹t‚ÉPHPˆÈŠO‚̃vƒƒWƒFƒNƒg‚©‚ç‚ÌŒ¾Œêƒf[ƒ^ƒtƒ@ƒCƒ‹‚̗��—p‚ª‚µ‚â‚·‚­‚È‚Á‚��‚é‚̂ł͂Ȃ��‚Å‚µ‚傤‚©B
ƒ‰ƒxƒ‹Fi18n cakephp
posted by SDozono at 21:01| “Œ‹ž ☁| Comment(1) | TrackBack(6) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é

2008”N01ŒŽ16“ú

[1.2]Easy Bake on Windows

*Now, as the easiest way, you can specify the project path with -app!!*
*>cake bake -app project "app" path.*

In English:
Easy Bake on Windows:
1. Open the cake's console folder with "Command Prompt".
2. Type SET PATH=%PATH%;%CD%
This will add the console path temporarily only in the window.
3. Just type PATH(enter) and check the registered path info.
4. Type CD ../../
and return to the home directory of the cake.
5. Type md ProjectName (or use Explorer) to make a project folder.
6. Type cd ProjectNameAand go into the directory.
7. Type cake bake

Cake1.2‚ðŽg‚¦‚»‚¤‚È‘åŒ^ˆÄŒ‚Ì‘O‚ɁA1.2‚É–{˜‚ð‚��‚ê‚悤‚©‚ÆŽv‚Á‚��‚Ü‚·B

1.2‚©‚ç‚́Abake‚Íconsole‚̂ЂƂ‚Ƃ��‚¤ˆÊ’u‚¯‚Æ‚È‚èA­‚µ“®ì‚ª•ÏX‚³‚ê‚��‚Ü‚·B‚æ‚ègƒtƒNƒUƒch‚Ȃ�}‚Æ‚ª‚Å‚«‚é‚悤‚É‚È‚è‚Ü‚µ‚½‚ªA1.1‚ÌŠÈ’PƒXƒ^[ƒg‚æ‚è‚Í‚¿‚å‚Á‚Æ–Ê“|‚É‚È‚Á‚½‚©‚à‚µ‚ê‚Ü‚¹‚ñB‹@”\Œüã‚É•t‚«A‚�}‚Ì‚ ‚½‚è‚ÍŽd•û‚̂Ȃ��“_‚Å‚µ‚傤‚©B

*[’Ç‹L]Œ»ÝA-app‚ŏo—Í‚³‚¹‚éƒvƒƒWƒFƒNƒg‚́gapphƒfƒBƒŒƒNƒgƒŠ‚ðŽw’è‚Å‚«‚é‚悤‚É‚È‚Á‚��‚Ü‚·B‰º‹L‚àŽg‚¦‚Ü‚·‚ªA‚�}‚¿‚ç‚Ì‚Ù‚¤‚ª‚à‚Á‚ÆŠÈ’P‚Å‚·B*
*>cake bake -app "app‚É‘Š“–‚·‚é(app_controller.php‚âapp_model.php‚Ì“ü‚é)ƒtƒHƒ‹ƒ_‚ðŽw’è"‚ÅŠJŽn‚Å‚«‚Ü‚·B*

1.2‚̏ꍇAappƒtƒHƒ‹ƒ_ˆÈŠO‚̏ꏊ‚ɃvƒƒWƒFƒNƒg–¼‚ð‚‚¯‚Äbake‚Å‚«‚é‚悤‚É‚È‚Á‚��‚Ü‚·B‚»‚Ì‚½‚߂ɂ́A
>cake bake
‚Æ‚µ‚āAgƒJƒŒƒ“ƒgƒfƒBƒŒƒNƒgƒŠh‚Ƀf[ƒ^‚ðï¿½ï¿½ï¿½ï¿½‚³‚¹‚邽‚߁Acake.bat‚̃pƒX‚ª’Ê‚Á‚��‚Ȃ��‚Ƃ��‚¯‚Ü‚¹‚ñB

‚Ƃ�}‚낪A¡‰ñ‚̏ꍇ‚ÍWindowsã‚Å‚Ì’P‚È‚éƒeƒXƒg‚Ȃ̂ŁAŠÂ‹«•Ï”‚ɂ�}‚̃pƒX‚ð“o˜^‚·‚é‚̂͂�N‚Á‚­‚¤‚Å‚·B‚»‚à‚»‚àACake‚̐Vƒo[ƒWƒ‡ƒ“‚ªƒŠƒŠ[ƒX‚³‚ê‚邽‚тɕʃtƒHƒ‹ƒ_‚É“WŠJ‚µ‚��‚é‚̂ŁA‚»‚ÌCake‚²‚Æ‚Ì‚·‚�~‚Ä‚ÌconsoleƒtƒHƒ‹ƒ_‚ðƒpƒX‚É“o˜^‚·‚é‚È‚ñ‚Ä–Ê“|‚Å‚·B‚»‚ê‚ɂǂ̃tƒHƒ‹ƒ_‚Ì cake.bat ‚ðŽg‚¤‚�}‚Æ‚É‚È‚é‚ñ‚Å‚µ‚傤‚©Bl‚¦‚½‚¾‚¯‚Å‚à‚�}‚ñ‚ª‚ç‚©‚è‚»‚¤‚Å‚·B‚ ‚ƁAbake‚ðŽg‚¤‚̂́AŠJ”­‚Ì–{“–‚ɏ‰Šú‚Ì’iŠK‚¾‚¯‚Å‚·B

php.exe ‚ðPATH“o˜^‚·‚é‚Ì‚Í”[“¾‚Å‚«‚Ü‚·‚ªAcliƒXƒNƒŠƒvƒg‚̃tƒHƒ‹ƒ_‚ÉPATH‚ð’Ê‚¹‚ÆŒ¾‚í‚ê‚Ä‚àcB

‚�}‚̃pƒX‚̐ݒè‚Á‚āA‚È‚ñ‚©DOS‚̃Rƒ}ƒ“ƒh‚Å•Ö—˜‚È‚â‚è•û‚ª‚ ‚Á‚½‚Í‚¸‚¾‚æ‚È‚Ÿc‚ƁAMS-DOS3.3Cï¿½ï¿½‘ã‚̐lŠÔ‚Ȃ̂ōl‚¦‚Ä‚µ‚܂��‚Ü‚µ‚½B

‚ŁAŠÈ’P‚È•û–@‚Å‚·B

bakeƒXƒNƒŠƒvƒg‚ð‚»‚ñ‚È‚ÉŽg‚í‚Ȃ��‚̂ŁA–ˆ‰ñŽg—pŽž‚ɁAPATH‚Ɉꎞ“I‚ɐݒè‚Å‚«‚ê‚΂æ‚��Bc:\Program Files\xampp\htdocs\cake ...‚Ý‚½‚��‚ȃ^ƒCƒv‚Í‚µ‚½‚­‚Ȃ��A‚Ƃ��‚¤l‚ÍŽg‚¦‚é‹Z‚©‚à‚µ‚ê‚Ü‚¹‚ñB

Windows‚ÅŠÈ’P‚Ébake
(1) consoleƒtƒHƒ‹ƒ_‚ðƒRƒ}ƒ“ƒhƒvƒƒ“ƒvƒg‚ÅŠJ‚­
@@iŠJ‚«•û‚ÍŽ©•ª‚Å’²‚�~‚Ü‚µ‚傤Bj
(2) SET PATH=%PATH%;%CD%
@@‚Æ‘Å‚¿ž‚ށB‚·‚é‚ƁA‚»‚̃Rƒ}ƒ“ƒhƒvƒƒ“ƒvƒg‚̃EƒBƒ“ƒhƒEã‚¾‚¯AconsoleƒtƒHƒ‹ƒ_‚̃pƒX‚ª’ljÁ‚³‚ê‚Ü‚·B(%CD%‚́AƒJƒŒƒ“ƒgƒfƒBƒŒƒNƒgƒŠA‚Ƃ��‚¤ˆÓ–¡‚Å‚·B)
(3) ’P‚ɁAPATH(Enter)‚Æ“ü‚ê‚Ă݂āAŽÀÛ‚É“o˜^‚³‚ꂽ‚©‚Ç‚¤‚©AŠm”F‚µ‚Ä‚Ý‚Ü‚µ‚傤B
(4) CD ../../
‚ŁAcake‚̐eƒtƒHƒ‹ƒ_‚É–ß‚é
(5) md "ƒvƒƒWƒFƒNƒgƒtƒ@ƒCƒ‹–¼"‚ŁA“K“–‚ȃvƒƒWƒFƒNƒg–¼‚ðì‚éB
‚�}‚Ì‚ ‚½‚èAƒGƒNƒXƒvƒ[ƒ‰‚ŃtƒHƒ‹ƒ_‚ðìï¿½ï¿½‚µ‚Ä‚à‚æ‚��‚ÆŽv‚��‚Ü‚·B
(6) cd "ƒvƒƒWƒFƒNƒgƒtƒ@ƒCƒ‹–¼"‚ŁA‚»‚̃fƒBƒŒƒNƒgƒŠ‚É“ü‚éB
(7) ‚ ‚Ƃ́Acake bake ‚ÅŽn‚Ü‚è‚Ü‚·Bƒpƒ‰ƒ[ƒ^‚ð‹ìŽg‚·‚ê‚΁A‚à‚Á‚Ƃ��‚ë‚��‚ë‚Å‚«‚é‚Å‚µ‚傤B

ƒpƒ‰ƒ[ƒ^‚͉º‹L‚ðŽQl‚É‚Å‚«‚Ü‚·F
cakebaker:Faster baking with bake

‚à‚Á‚ÆŠÈ’P‚È•û–@‚ª‚ ‚Á‚½‚çA‹³‚¦‚Ä‚­‚¾‚³‚��B
posted by SDozono at 14:11| “Œ‹ž ☀| Comment(2) | TrackBack(3) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é

2007”N11ŒŽ13“ú

RewriteCond %{REQUEST_URI} !\.(cgi|css|gif|jp?g|png)$

app/webroot/.htaccess‚Ì’†‚ɁA

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !\.(cgi|css|gif|jp?g|png)$ *added*
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]

‚Á‚Ä•W€‚Å“ü‚Á‚��‚Ä‚à‚��‚��‚­‚ç‚��‚Å‚·‚æ‚ˁBTicket‚ðo‚µ‚Ä‚æ‚��“à—e‚¾‚ÆŽv‚��‚Ü‚·I

‰º‹L‚©‚çˆø—pF
WEB‚Õ‚ë‚®‚ç‚܁`@ƒVƒXƒeƒ€ŠJ”­ƒGƒgƒZƒgƒ‰
2007-11-09 cakePHP‚ŕςȃAƒNƒZƒX‚ª‚ ‚éIH
http://d.hatena.ne.jp/takuya15/20071109/1194576191
ƒ‰ƒxƒ‹Fcakephp framework tips
posted by SDozono at 09:42| “Œ‹ž ☀| Comment(0) | TrackBack(0) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é

2007”N11ŒŽ02“ú

u¡“x‚̃TƒCƒg‚ÍCakePHP‚ō\’z‚µ‚āv‚Æ—Š‚Þ—˜“_10

u¡“x‚̃TƒCƒg‚ÍCakePHP‚ðŽg‚Á‚č\’z‚µ‚Ä‚­‚¾‚³‚��v‚Ɛ��ì‰ïŽÐ‚É—Š‚ނƁA‚Å‚«‚ ‚ª‚éƒTƒCƒg‚́A

1. i­‚µ‚̏C³A‚Ü‚½‚Í‚»‚̂܂܂ŁjPHP4‚̃T[ƒo‚Å‚àPHP5‚̃T[ƒo‚Å‚à“®‚­BŠù‘��ƒT[ƒo‚Å‚àAV‹KƒT[ƒo‚Å‚à‚n‚jB‘½‚­‚̌ڋq‚É”z•z‚·‚éWebƒAƒvƒŠƒP[ƒVƒ‡ƒ“‚Å‚ ‚Á‚Ä‚àAPHP‚ª“®‚­‚Ȃ炽‚��‚��‚Ì‹qæ‚Å“®ì‰Â”\BŠJ”­ŽÒ‚àu‚»‚̃T[ƒo‚ÍPHP5‚Å‚·‚©Hv‚ÆŠm”F‚·‚é•K—v‚ª‚Ȃ��BPHP5‚Å‚ ‚ê‚΃xƒ^[‚Å‚·B‚µ‚©‚µAŠm”F‚µ‚½‚çPHP4‚¾‚Á‚½A‚Ƃ��‚¤ê‡‚Å‚à‚¤‚낽‚¦‚é‚�}‚Ƃ͂Ȃ��‚Å‚µ‚傤B
2. ƒf[ƒ^ƒx[ƒX‚ðMySQL‚ōì‚Á‚�N‚��‚āA‚ ‚Æ‚©‚çPostgreSQL‚É‚µ‚½‚èAOracle‚É‚µ‚½‚è‚Å‚«‚éB
3. «—ˆ“I‚È•s‰Â•ªŽU‚ɑΉž‰Â”\B‘å‹K–̓TƒCƒg‚É”­“W‚µ‚Ä‚à‚»‚̂܂܂��‚¯‚é‚Í‚¸B
4. ƒfƒUƒCƒ“‚̕ύX‚É‹­‚��BƒfƒUƒCƒ“‚̓eƒ“ƒvƒŒ[ƒg‚ðì‚è•Ï‚¦‚é‚悤‚Ȋ�LŠo‚ōì‹Æ‚Å‚«‚é‚Å‚µ‚傤B
5. uƒXƒs[ƒhA‚à‚¤‚¿‚å‚Á‚Ƒ��‚­‚È‚ç‚Ȃ��Hv‚Ƃ킪‚Ü‚Ü‚ðŒ¾‚Á‚Ä‚àA‚½‚Ô‚ñ‰½‚Æ‚©‚µ‚Ä‚­‚ê‚é‚Í‚¸BiÅ“K‰»‚Ì•û–@‚ª‚��‚ë‚��‚ë‚ ‚éBj
6. ‚ ‚Æ‚©‚çliƒfƒUƒCƒi[AƒvƒƒOƒ‰ƒ}j‚𑝂₵‚Ä‚àA‹¤“¯ì‹Æ‚ªŠyBiƒtƒ@ƒCƒ‹‚ª•ª‚©‚ê‚��‚é‚Ì‚Å•ª‹Æ‚µ‚â‚·‚��Bj
7. ŠJ”­ŽÒ‚Ì‚â‚é‹C‚ðˆø‚«o‚¹‚éBi‚½‚Ô‚ñBPHPŒ™‚��‚Ȑl‚Í‚µ‚傤‚ª‚Ȃ��‚Å‚·‚¯‚ǁBj
8. ƒVƒXƒeƒ€‚ÌŽd—l•ÏX‚É‹­‚��Bu`‚ð`‚ɕύX‚µ‚Ä‚­‚¾‚³‚��v‚Ƃ��‚¤‚悤‚È—v–]‚É‚àA‘f‚ÌPHP‚ŏ‘‚��‚Ä‚ ‚é‚æ‚èAì‹Æ‚µ‚â‚·‚��i‚Í‚¸jB‚ ‚Æ‚©‚çAjax‰»‚·‚é‚�}‚Æ‚àA‚»‚ê‚Ù‚Ç‚Ì‘åì‹Æ‚É‚Í‚È‚è‚Ü‚¹‚ñB
9. ‘ÛƒT[ƒrƒX‚É‚µ‚½‚©‚Á‚½‚çACakePHP‚Ì•ª‚©‚é‹ZpŽÒ‚ðŠCŠO‚©‚ç‚à’²’B‚Å‚«‚éB¡‚̂Ƃ�}‚ëAZend Framework‚Ì•ª‚©‚é‹ZpŽÒ‚ð’T‚·‚æ‚è‚àŠy‚È‚Í‚¸B‰pŒê‚Ì‹Zpî•ñ‚Ì‚Ù‚¤‚ªA“ú–{Œê‚æ‚葽‚­‚ ‚è‚Ü‚·B
10. g‚ ‚é’ö“xh‚̃ZƒLƒ…ƒŠƒeƒB‚ðŠm•Û‚Å‚«‚éB‹†‹É“I‚É‚ÍŠe‹ZpŽÒ‚̃Œƒxƒ‹‚ɍ��‰E‚³‚ê‚Ü‚·‚ªAˆÀ‘S–Ê‚Ì‘å˜g‚̓NƒŠƒA‚Å‚«‚é‚Í‚¸B

‚Ü‚ŸACakePHPˆÈŠO‚̃tƒŒ[ƒ€ƒ[ƒN‚ðŽg—p‚µ‚Ä‚àA‚©‚È‚è‚Ì“_‚ª‚ ‚Ä‚Í‚Ü‚é‚ÆŽv‚��‚Ü‚·‚ªcB‚Æ‚è‚ ‚¦‚¸A2008”N‚ɂ́AgƒTƒCƒgŠJ”­h‚ŃtƒŒ[ƒ€ƒ[ƒN‚ðŽg—p‚·‚é‚Ì‚ª“–‚½‚è‘O‚É‚È‚é‚̂ł͂Ȃ��‚Å‚µ‚傤‚©BPHP‚ŃTƒCƒg‚ð\’z‚µ‚悤‚Ƃ�Nl‚¦‚Å‚ ‚ê‚΁A‚²ˆêl‚ðB
posted by SDozono at 17:09| “Œ‹ž ☁| Comment(0) | TrackBack(0) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é

2007”N09ŒŽ22“ú

Quick Hack to change CakePHP to use object-based models

One of the CakePHP user in Japan wrote an interesting article.

Happy EngineerLife
"Use models of CakePHP as entities"

It explains how to change (or add) a CakePHP's model a "data object".

He added some functions to App_Model and App_Controller and make possible to write this code.


========================================
class ItemsController extends AppController
{
var $name = 'Items';

function index($id) {
$entity = $this->createEntity('Item', $this->Item->read(null, $id));
$this->set('item', $entity);
}
}
========================================


and then you can write your views in this way.

==============================================
//instead of "echo $item['Item']['price'];"
echo $item->g('price'); (or, echo $item->get('price'))
//You can calculate dynamically with Model values.
echo $item->taxOnPrice();
//You can set a value from View.
echo $item->s('price', 5000);
==============================================

ƒ‰ƒxƒ‹Fcakephp object-based Model
posted by SDozono at 14:11| “Œ‹ž ☀| Comment(0) | TrackBack(0) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é

2007”N09ŒŽ21“ú

CakePHP tutorials at www.scribd.com











ƒ‰ƒxƒ‹Fcakephp tutorials
posted by SDozono at 10:34| “Œ‹ž ☀| Comment(0) | TrackBack(0) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é

2007”N09ŒŽ20“ú

Sorting Model data with usort()

For example, if you want to achive like this:


Controller -------------------
$data1 = $this->Reservation->findAll();
$data2 = $this->AdditionalReservation->findAll();

//If needed, change $data2's array name
"AdditionalReservation" to "Reservation". Then,

$data = array_merge($data1, $data2);

$data = $this->Reservation->sortbytime($data);
$this->set("reservations", $data);
------------------------------

You can use this technique.

Model ------------------------
function myCmp($array1, $array2)
{
$time1 = strtotime($array1['Reservation']['rsv_time']);
$time2 = strtotime($array2['Reservation']['rsv_time']);
if($time1 == $time2){
return 0;
}
return ($time1 > $time2)? 1 : -1;
}

function sortbytime($data)
{
usort($data, array("Reservation", "myCmp"));
return $data;
}
------------------------------
ƒ‰ƒxƒ‹Ftips cakephp Model
posted by SDozono at 11:44| “Œ‹ž ☀| Comment(0) | TrackBack(0) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é

2007”N09ŒŽ16“ú

‚‚��‚É1.2ƒ}ƒjƒ…ƒAƒ‹‚ª“oê

‚‚��‚ɁA1.2ƒ}ƒjƒ…ƒAƒ‹‚̃vƒŒƒrƒ…[‚ª“oê‚µ‚Ü‚µ‚½B
http://tempdocs.cakephp.org/

’ù³F‚Ü‚¾AƒŒƒrƒ…[‘O‚̖��ŒöŠJƒhƒLƒ…ƒƒ“ƒg‚¾‚Á‚½‚»‚¤‚Å‚·B

‹LŽ–F
cakebaker
First version of the CakePHP 1.2 manual online

1.2‚̐V‹@”\‚Ȃǂɂ‚��‚āA‚�}‚ê‚©‚çÚ‚µ‚­’ljÁ‚³‚ê‚��‚­‚̂ł͂Ȃ��‚©A‚ÆŽv‚��‚Ü‚·B

‚¿‚Ȃ݂ɁAŒ»Ý‚Ì“ú–{Œêƒ}ƒjƒ…ƒAƒ‹‚Í1.1—p‚ŁA‚�}‚¿‚ç‚É‚ ‚è‚Ü‚·B
http://cakephp.jp/doc/

[’Ç‹L]
‚ ‚ê`‚ÁA‚�}‚ê‚Í“Ç‚ß‚é‚È‚ŸB
https://cakeforge.org/plugins/scmsvn/viewcvs.php/?root=cakedocs
posted by SDozono at 23:01| “Œ‹ž ☀| Comment(0) | TrackBack(0) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é

2007”N09ŒŽ11“ú

PDT(Eclipse)+xdebug

‚¿‚å‚Á‚Æ‹ê˜J‚µ‚Ü‚µ‚½‚ªAEclipse PDT‚Æxdebug‚ð‘g‚ݍ‡‚킹‚āAcakephp‚̃fƒoƒbƒOŠÂ‹«‚ðì‚ꂽ‚Ý‚½‚��‚Å‚·B‚�}‚ê‚©‚çŽÀÛ‚ÉŽg‚��Žn‚ß‚é‚킯‚Å‚·‚ªcB

ˆÈ‘OA‚Ù‚©‚ÌEclipseƒvƒƒWƒFƒNƒg‚ðŽŽ‚µ‚½Žž‚ɂ́A‚Ç‚¤‚µ‚�}‚ñ‚È‚É’x‚��‚ñ‚¾‚낤‚Ƃ��‚¤Šï¿½LG‚ÅŽg‚¤‹C‚É‚à‚È‚ç‚È‚©‚Á‚½‚Ì‚Å‚·‚ªA¡‰ñA“ü‚ê‚Ä‚Ý‚½‚Ƃ�}‚ëAŽv‚Á‚½‚æ‚è‘��‚©‚Á‚½‚Ì‚Å‹Á‚«‚Ü‚µ‚½BPDT‚¾‚©‚ç‚È‚Ì‚©A‚»‚ê‚Æ‚àƒ}ƒVƒ“‚̃Xƒs[ƒh‚É‚æ‚é‚Ì‚©B‹N“®Žž‚Ì‚Ý‘Ò‚½‚³‚ê‚Ü‚·‚ªA‚»‚ÌŒã‚Í‚í‚è‚Æ‚³‚­‚³‚­“®‚«‚Ü‚·B

Zend Debugger‚ðÅ‰‚É“ü‚ꂽ‚Ì‚Å‚·‚ªAmod_rewrite‚ðOFF‚̐ݒè‚É‚µ‚Ȃ��‚Æ‚¤‚Ü‚­“®‚«‚Ü‚¹‚ñ‚Å‚µ‚½BML‚Å‚àmod_rewrite‚ÍŽg‚¦‚Ȃ��A‚Ƃ��‚¤ˆÓŒ©‚ª‚ ‚è‚Ü‚µ‚½Bxdebug‚Ȃ炤‚Ü‚­‚��‚«‚Ü‚·B

Debugging Cake app via DBG or Zend Debugger
debugging methods with cakePHP

xdebug‚ɕύX‚µ‚½‚Ƃ�}‚ëAmod_rewrite‚»‚Ì‚Ü‚Ü‚Å‚¤‚Ü‚­“®‚­‚悤‚É‚È‚è‚Ü‚µ‚½BiÝ’肪‚�N‚©‚µ‚��‚ƁAbreakpoint‚ª‚¤‚Ü‚­“®‚«‚Ü‚¹‚ñBj

‚µ‚΂炭Žg‚��ŸŽè‚ðŽŽ‚µ‚Ă݂悤‚ÆŽv‚��‚Ü‚·B‚Ȃ�NA‰æ–ʂ́AÅV‚Ì decorate.php ‚ŏĂ��‚Ä‚Ý‚½‚Ƃ�}‚ë‚Å‚·BƒRƒ}ƒ“ƒhƒ‰ƒCƒ“‚Ńe[ƒuƒ‹‚ðŽw’è‚·‚邾‚¯‚ŁAƒ\[ƒg‹@”\AŒŸõiƒT[ƒ`j‹@”\Aƒy[ƒWƒ“ƒO‚̂‚��‚½‚c‚aƒe[ƒuƒ‹•ÒW‰æ–Ê‚ÌMVCƒtƒ@ƒCƒ‹‚ªŽ©“®ï¿½ï¿½ï¿½ï¿½‚³‚ê‚Ü‚·B‚‚��‚łɁA¡‰ñ‚©‚çAƒZƒLƒ…ƒŠƒeƒBƒRƒ“ƒ|[ƒlƒ“ƒg‚àƒfƒtƒHƒ‹ƒg‚ÅŽg‚¤‚悤‚É‚µ‚Ü‚µ‚½Bƒg[ƒNƒ“Œ`Ž®‚ÌCSRF‘΍ô‚à‚Å‚«‚��‚Ü‚·B

PDT+XDEBUG.PNG

PDT
http://www.eclipse.org/pdt/
"The PDT project is working towards providing a PHP Development Tools framework for the Eclipse platform."

xdebug
http://www.xdebug.org/
The Xdebug extension helps you debugging your script by providing a lot of valuable debug information.

Prebuilt Binary of XDebug Support
‚©‚çAŒ»Ý—LŒø‚ȃoƒCƒiƒŠ‚ðŽæ‚Á‚Ä‚«‚āAPDT‚É“ü‚ê‚éB
https://bugs.eclipse.org/bugs/show_bug.cgi?id=169408
ƒ‰ƒxƒ‹FPDT xdebug cakephp
posted by SDozono at 13:33| “Œ‹ž 🌁| Comment(0) | TrackBack(3) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é

2007”N08ŒŽ07“ú

invalidate‚ÌŽg‚��•û

ŽÀ‚͉º‹L‚̃XƒŒƒbƒh‚É‚Í”ñí‚ɏd—v‚Ȃ�}‚Æ‚ª‘‚��‚Ä‚ ‚è‚Ü‚·B
1.1Œn‚Å‚àAƒRƒ“ƒgƒ[ƒ‰“à‚Å•¡ŽG‚ȃoƒŠƒf[ƒVƒ‡ƒ“‚ð‚©‚¯‚é‹@”\‚ª•W€‚Å‘g‚ݍž‚Ü‚ê‚��‚é‚Ƃ��‚¤˜b‚Å‚·B

Problems with simple invalidate test
http://groups.google.com/group/cake-php/browse_thread/thread/354a677b21779c0/

’ʏíAbake.php ‚â decorate.php ‚È‚Ç‚ðŽg‚Á‚ăf[ƒ^‚ðo—Í‚·‚é‚ƁA‰º‹L‚̂悤‚ȃR[ƒh‚ªï¿½ï¿½ï¿½ï¿½‚³‚ê‚Ü‚·B


function add() {
@@@@//‚à‚µƒf[ƒ^‚ªPOST‚³‚ê‚��‚Ȃ��ˆê‰ñ–Ú‚È‚ç
@@@@if (empty($this->data)) {
@@@@@@@@//“ü—͉æ–Ê‚ðo—Í
@@@@@@@@$this->render();
@@@@} else {
@@@@@@@@//ƒf[ƒ^‚ªPOST‚³‚ê‚��‚é‚È‚çA
@@@@@@@@//“ú•tƒf[ƒ^‚̘AŒ‹ˆ—‚ð‚·‚ég‚܂Ƃ߁hŠÖ”
@@@@@@@@$this->cleanUpFields();
@@@@@@@@//$this->data‚Ì“à—e‚ð•Û‘��
@@@@@@@@if ($this->Category->save($this->data)) {
@@@@@@@@@@@@$this->Session->setFlash('The Category has been saved');
@@@@@@@@@@@@$this->redirect('/categories/index');
@@@@@@@@} else {
@@@@@@@@@@@@//ƒoƒŠƒf[ƒVƒ‡ƒ“‚ÉŽ¸”s‚µ‚½‚̂ŃGƒ‰[‚ðo—́BC³‚ð‘��‚·
@@@@@@@@@@@@$this->Session->setFlash('Please correct errors below.');
@@@@@@@@}
@@@@}
}



‚µ‚©‚µ‚�}‚ê‚ðA

function add() {
@@@@//‚à‚µƒf[ƒ^‚ªPOST‚³‚ê‚��‚Ȃ��ˆê‰ñ–Ú‚È‚ç
@@@@if (empty($this->data)) {
@@@@@@@@//“ü—͉æ–Ê‚ðo—Í
@@@@@@@@$this->render();
@@@@} else {
@@@@@@@@//ƒf[ƒ^‚ªPOST‚³‚ê‚��‚é‚È‚çA
@@@@@@@@//“ú•tƒf[ƒ^‚̘AŒ‹ˆ—‚ð‚·‚ég‚܂Ƃ߁hŠÖ”
@@@@@@@@$this->cleanUpFields();
@@@@
@@@@@@@@//ƒf[ƒ^‚ðˆÚ“® *‚�}‚�}‚ªƒ|ƒCƒ“ƒg*
@@@@@@@@$this->Category->set($this->data);
@@@@@@@@//ƒf[ƒ^‚ðƒ`ƒFƒbƒN‚µ‚Ä•K—v‚Å‚ ‚ê‚΁AðŒ‚ʼnº‹L‚̂悤‚ȃGƒ‰[‚𔭐��‚³‚¹‚éB
@@@@@@@@$this->Category->invalidate("name");
@@@@@@@@$this->Category->invalidate("ƒrƒ…[‚ÌtagErrorMsg()‚ɐݒ肷‚é’l");

@@@@@@@@//$this->data‚Ì“à—e‚ð•Û‘��
@@@@@@@@if ($this->Category->save()) { //*’ˆÓ*
@@@@@@@@@@@@$this->Session->setFlash('The Category has been saved');
@@@@@@@@@@@@$this->redirect('/categories/index');
@@@@@@@@} else {
@@@@@@@@@@@@//ƒoƒŠƒf[ƒVƒ‡ƒ“‚ÉŽ¸”s‚µ‚½‚̂ŃGƒ‰[‚ðo—́BC³‚ð‘��‚·
@@@@@@@@@@@@$this->Session->setFlash('Please correct errors below.');
@@@@@@@@}
@@@@}
}



‚Ə‘‚«’¼‚·‚ƁA•¡”ƒtƒB[ƒ‹ƒh‚ð‚Ü‚½‚��‚¾ƒoƒŠƒf[ƒVƒ‡ƒ“ˆ—‚âA‚ЂƂ‚̃tƒB[ƒ‹ƒh‚É•¡”‚̃oƒŠƒf[ƒVƒ‡ƒ“ƒ‹[ƒ‹‚ð“K—p‚·‚é‚�}‚Æ‚ª‚Å‚«‚Ü‚·B

‚¿‚Ȃ݂ɁA‚�}‚ê‚Ü‚Å
$this->data['Category']['name']
‚È‚Ç‚Æ‚µ‚Ä‘€ì‚µ‚��‚½ƒf[ƒ^‚́A$this->Category->set($this->data)Œã‚́A
$this->Category->data['Category']['name']
‚Ƃ��‚¤Œ`‚ł̃AƒNƒZƒX‚É‚È‚è‚Ü‚·B
posted by SDozono at 21:23| “Œ‹ž ☁| Comment(0) | TrackBack(0) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é

2007”N06ŒŽ29“ú

redirect()‚ō��‚Á‚½‚ç`"Don't redirect directly!"

ƒƒOƒCƒ“”FØ‚Ü‚í‚è‚ł‚܂¸‚��‚��‚é•û‚ª‘½‚��‚悤‚Ȃ̂ŁAŽQlî•ñ‚ð‘‚ï¿½ï¿½‚�N‚«‚Ü‚·ccB

Cake‚ɂ́A

u‚·‚�~‚ẴAƒNƒVƒ‡ƒ“‚Ì‘O‚ɂ́Ae‹Êapp_controller.php ‚Ì "beforeFilter"‚ªŒÄ‚΂ê‚év

‚Ƃ��‚¤ƒ‹[ƒ‹‚ª‚ ‚è‚Ü‚·B


[’Ç‹LFŠeƒRƒ“ƒgƒ[ƒ‰‚ÉbeforeFilter‚ð“ÆŽ©‚ɐݒ肵‚Ä‚µ‚Ü‚¦‚΁Aparent::beforeFilter();‚Æ‚µ‚Ȃ��‚©‚��‚èAapp_controller.php‚ÌbeforeFilter()‚͌Ă΂ê‚Ü‚¹‚ñ‚ˁBu‚·‚�~‚ẴAƒNƒVƒ‡ƒ“‚Ì‘O‚ɂ́AgƒRƒ“ƒgƒ[ƒ‰‚Å“ÆŽ©‚ÉbeforeFilter‚ðÝ’肵‚��‚È‚¯‚ê‚΁hAe‹Êapp_controller.php‚ÌbeforeFilter‚ªŒÄ‚΂ê‚éB“ÆŽ©Ý’肵‚��‚ê‚΁AŠeƒRƒ“ƒgƒ[ƒ‰‚Ì“ÆŽ©beforeFilter‚ªŒÄ‚΂ê‚éB“ÆŽ©‚ÉbeforeFilter‚ðÝ’肵‚��‚āA‚»‚ê‚Å‚àeapp_controller.php‚ÌbeforeFilter‚ðŒÄ‚яo‚µ‚½‚��A‚Ƃ��‚¤ê‡‚É‚Í parent::beforeFilter()‚Æ‚·‚év‚Æ‚µ‚½‚Ù‚¤‚ªA³Šm‚Å‚·ƒlB]

•Ê‚̃tƒŒ[ƒ€ƒ[ƒN‚ł́AƒAƒNƒVƒ‡ƒ“ƒ`ƒFƒCƒ“‚ȂǂƂ��‚¤‚Ì‚ÉŽ—‚��‚é‚Å‚µ‚傤‚©B‚Ȃ̂ŁA‚�}‚�}‚эƒOƒCƒ“‚µ‚��‚é‚©‚Ç‚¤‚©‚ðƒ`ƒFƒbƒN‚·‚ê‚΁A–å”Ô‚Æ‚µ‚ė��”h‚È–ð–Ú‚ð‰Ê‚½‚·‚ÆŠú‘Ò‚Å‚«‚Ü‚·B

‚½‚¾–â‘è‚͂�}‚�}‚©‚ç‚Å‚·B

‚PjƒƒOƒCƒ“‚µ‚��‚Ȃ��‚�}‚Æ‚ª”»–¾
‚QjƒƒOƒCƒ“‰æ–Ê‚Ö”ò‚΂·

‚Ƃ��‚¤‚�}‚ÌŠÈ’P‚ȗ��‚ê‚ð‚¾‚ê‚Å‚àl‚¦‚Ü‚·‚ªA1)‚̃AƒNƒVƒ‡ƒ“‚Å app_controller.php‚ÌbeforeFilter() ‚ð’Ê‚Á‚½‚ ‚ƁA’Pƒ‚É 2)‚É $this->redirect('ƒƒOƒCƒ“‰æ–Ê—pƒAƒNƒVƒ‡ƒ“')‚Æ‚µ‚Ä”ò‚΂µ‚Ä‚µ‚Ü‚¤‚ƁACPU100%‚É‚È‚Á‚½‚èAFirefox‚ɁAgƒŠƒ_ƒCƒŒƒNƒg‚ª‚�N‚©‚µ‚��h‚ÆŒ¾‚í‚ê‚ÄŽ~‚Ü‚Á‚½‚肵‚Ä‚µ‚܂��‚Ü‚·B

‚È‚º‚È‚çA‚Qj‚É“ü‚Á‚½Žž“_‚Å‚àAu‚à‚¤ˆê“xAapp_controller.php ‚ÌbeforeFilter()‚ªŒÄ‚΂ê‚év‚©‚ç‚Å‚·B

‚‚܂è‚͉½‚àl‚¦‚¸‚ɃR[ƒfƒBƒ“ƒO‚µ‚Ä‚µ‚Ü‚¤‚ƁAapp_controller.php‚ÌbeforeFilter() ‚©‚çAapp_controler.php‚ÌbeforeFilter()‚ցA“¯‚��‚Ƃ�}‚ë‚ð‚®‚é‚®‚é‚Ɖñ‚邾‚¯‚É‚È‚Á‚Ä‚µ‚܂��‚Ü‚·B

‚�}‚Ì‚ ‚½‚è‚ð‰ðŒˆ‚·‚é‚É‚ÍŠô‚‚©‚Ì•û–@‚ª‚ ‚è‚Ü‚·B

(1)‚»‚à‚»‚à$this->redirect‚ðŽg‚í‚Ȃ��
@@—Ⴆ‚΁A$this->layout = "login.thtml"‚È‚Æ‚Æ‚µ‚āAƒŒƒCƒAƒEƒg‚ð•ÏX‚µ‚Ä‚µ‚Ü‚¤‚Ƃ��‚¤ƒAƒCƒfƒA‚Å‚·B

‚��‚¿‚΂ñŠÈ’P‚È”FØƒVƒXƒeƒ€
http://cakephp.seesaa.net/article/20317502.html

(2)DB‚âƒZƒbƒVƒ‡ƒ“‚ɁAg¡AƒƒOƒCƒ“ì‹Æ‚ð‚͂��‚ß‚½‚æh‚Əî•ñ‚ð‘‚«ž‚ñ‚ł�N‚«A‚»‚̏ꍇ‚ɂ̓Šƒ_ƒCƒŒƒNƒg‚µ‚Ȃ��Bi‚�}‚Ì•û–@‚¾‚ƁA‚R‰ñƒƒOƒCƒ“‚ÉŽ¸”s‚µ‚½‚çƒAƒEƒgA‚Ȃǂ̏ˆ—‚à‚Å‚«‚Ü‚·Bj

othauth
http://bakery.cakephp.org/tags/view/othauth
™‚�}‚̃Rƒ“ƒ|[ƒlƒ“ƒg‚ª‚��‚܂̂Ƃ�}‚ëAˆê”ԁAÅæ’[‚ð‚��‚Á‚��‚éƒRƒ“ƒ|[ƒlƒ“ƒg‚Å‚·B‚½‚¾beforeFilter“à‚É’u‚��‚Đݒ肷‚邾‚¯‚ŁA‚ ‚Ƃ͂悵‚È‚ÉŽæ‚èŒv‚ç‚Á‚Ä‚­‚ê‚Ü‚·B

YACCA Yet Another Cake Component for Auth
http://bakery.cakephp.org/articles/view/yacca-yet-another-cake-component-for-auth

(3)¡Œ»ÝAƒƒOƒCƒ“ƒAƒNƒVƒ‡ƒ“’†‚È‚ç‚΁AƒŠƒ_ƒCƒŒƒNƒg‚µ‚Ȃ��

if($this->action != 'login' && $this->action != 'logout')

‚Ń`ƒFƒbƒN‚µ‚��‚Ü‚·B

http://bakery.cakephp.org/articles/view/simple-form-authentication-in-1-2-x-x

‚ł́Abakery.cakephp.orgŽ©‘̂̃\[ƒXƒR[ƒh‚Í‚Ç‚¤‚È‚Á‚��‚é‚ñ‚¾‚낤A‚ÆŒ©‚Ä‚Ý‚é‚ƁA(1)‚©‚ç(3)‚É‚ÍŠY“–‚µ‚��‚Ü‚¹‚ñ‚Å‚µ‚½B(4)”Ô–Ú‚Ì•û–@‚Å‚·B

(4)user_controlleri=ƒƒOƒCƒ“‚ðƒ`ƒFƒbƒN‚·‚éƒRƒ“ƒgƒ[ƒ‰j“à‚ÉŽ©•ª‚ª‚��‚é‚©‚Ç‚¤‚©‚ðƒ`ƒFƒbƒN‚·‚é


if(($action != null && $this->action === $action) || $this->action === 'edit' || ($this->action === 'add' && $this->params['controller'] != 'users')){


‚Ƃ��‚¤Žd•û‚Ń`ƒFƒbƒN‚µ‚��‚Ü‚µ‚½B

‚��‚ë‚��‚ë‚ ‚è‚Ü‚·‚ˁI
posted by SDozono at 11:27| “Œ‹ž 🌁| Comment(0) | TrackBack(0) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é

2007”N06ŒŽ21“ú

‚ ‚Ìidex*idea‚Å‚àCakePHPŠJ”­‹LŽ–‚ªƒXƒ^[ƒg

ƒlƒbƒgƒrƒWƒlƒXî•ñƒuƒƒOw•SŽ®x‚³‚ñ‚̌lƒuƒƒOgIDEA*IDEAh‚Å‚àAcakephp‚É‚æ‚éŠJ”­ƒuƒƒO‚ª‚͂��‚Ü‚Á‚��‚Ü‚·B

CakePHP‚ÅSNS‚Á‚ۂ��‚à‚Ì‚ðì‚낤‚Æ‚µ‚čÁÜ‚·‚é‚܂ł̃R[ƒfƒBƒ“ƒO“ú‹L
http://www.ideaxidea.com/archives/cakephp/

‚à‚Ì‚·‚²‚��ƒXƒs[ƒh‚Å‹LŽ–‚ª“Še‚³‚ê‚��‚Ü‚·‚ˁB‰Ê‚½‚µ‚ăTƒCƒg‚ÍŠ®ï¿½ï¿½‚·‚é‚Å‚µ‚傤‚©ccB


‚Æ‚è‚ ‚¦‚¸ACakePHP‚ÌŠT—ª‚ð’m‚肽‚��A‚Ƃ��‚¤•û‚͉º‹L‚Ì‹LŽ–‚ð‚Ç‚¤‚¼B“o˜^‚ª•K—v‚Å‚·‚ªA‚·‚®Œ©‚ç‚ê‚Ü‚·B

CakePHPƒtƒŒ[ƒ€ƒ[ƒN‚É‚æ‚é‰õ‘��WEBŠJ”­
http://codezine.jp/a/article/aid/670.aspx
CakePHP“à‚̏ˆ—‚ð—‰ð‚·‚é
http://codezine.jp/a/article/aid/768.aspx
ƒ‰ƒxƒ‹Fcakephp PHP
posted by SDozono at 11:54| “Œ‹ž ☀| Comment(0) | TrackBack(1) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é

2007”N03ŒŽ28“ú

decorate‚͏펞’ñˆÄ•åW’†

decorate.php ‚Í bake.php‚ÌŠg’��‚ŁAuƒe[ƒuƒ‹ƒf[ƒ^‚©‚çAƒy[ƒWƒl[ƒVƒ‡ƒ“AŒŸõAƒ\[ƒg‹@”\‚̂‚��‚½WEBƒCƒ“ƒ^[ƒtƒFƒCƒX‚ðŽ©“®ï¿½ï¿½ï¿½ï¿½‚·‚évƒc[ƒ‹‚Å‚·B

decorate - advanced bake.php for 1.1
http://cakeforge.org/projects/decorate/

‚»‚µ‚Ä‚Ü‚½Auƒf[ƒ^ƒx[ƒX‚ÌŽw’肾‚¯‚ŁA”•S‚̃e[ƒuƒ‹‚ª‚ ‚Á‚½‚Æ‚µ‚Ä‚àƒ{ƒ^ƒ“ˆê”­‚ŕҏWWEB‰æ–Ê‚ðì‚èo‚·v‚Ƃ��‚¤AMasterBakeƒvƒƒWƒFƒNƒg‚É‚àƒR[ƒh‚ªŽg‚í‚ê‚��‚Ü‚·Bi‚È‚ñ‚Å‚à‚�}‚̍ìŽÒA”•S‚̃e[ƒuƒ‹‚ð‚�}‚ê‚ÅŠÇ—‚µ‚��‚é‚炵‚��‚Å‚·Bj

MasterBake - extending bake.php
Jeffrey Gilbert
http://cakeforge.org/projects/autobakery/

‚©‚�N‚é‚ñ‚³‚ñ‚̂�}‚¿‚ç‚Ì‹LŽ–‚ɃRƒƒ“ƒg‚Å‚«‚È‚©‚Á‚½i403 Forbidden‚Əo‚éj‚̂Ńgƒ‰ƒbƒNƒoƒbƒN‚ł�N•ÔŽ–‚µ‚�N‚«‚Ü‚·B

PHP‚̃eƒNƒƒ‚
http://php.atseason.com/?eid=490851
decorate.php‚�N‚©‚µ‚­‚Ȃ��‚©H


¡ŽèŒ³‚É‚ ‚édecorate.phpiRevision:4597Alastmodified:2007/3/7jAƒf[ƒ^ƒx[ƒX‚̐ړª•ï¿½ï¿½Žš—ñ‚ðŽw’肵‚Ä‚ ‚é‚Æ‚¤‚Ü‚­“®‚��‚Ä‚­‚ê‚È‚©‚Á‚½B’ÇŽŽ‚Í‚µ‚��‚Ȃ��‚¯‚ê‚ǁAƒoƒO‚Á‚ۂ��Bƒ\[ƒX‚ð­‚µ‚¾‚¯’­‚ß‚½‚¯‚ǁEEEA‚��‚Á‚­‚茩‚Ȃ��‚Æ‚â‚Á‚Ï‚è‚í‚©‚ç‚Ȃ��B

‚»‚¤‚È‚ñ‚Å‚·Bbake.php‚ÅŽŽ‚µ‚Ä‚à‚炦‚é‚Æ•ª‚©‚è‚Ü‚·‚ªAbakeƒNƒ‰ƒX‚̃Cƒ“ƒ^[ƒtƒFƒCƒX‚ª‰ü—Ç‚³‚ꂽŽž‚É“ü‚Á‚½ƒoƒO‚̂悤‚Å‚·B
decorateƒNƒ‰ƒX‚ÍbakeƒNƒ‰ƒX‚©‚ç”hï¿½ï¿½‚³‚¹‚��‚é‚̂ŁAbakeƒNƒ‰ƒX‚Ƃ��‚¤eƒKƒ‚ɃoƒO‚ª‚ ‚é‚ƁA"ŽqƒKƒ‚à"‚�}‚¯‚Ä‚µ‚܂��‚Ü‚·B‚µ‚©‚µ‚�}‚Ì–â‘è‚́A‰º‹L‚ÌTicket‚ŏC³‚³‚êAbake.php rev4669‚ŏC³‚³‚ê‚��‚Ü‚·B

https://trac.cakephp.org/ticket/2253
‚»‚ê‚ɍ‡‚킹‚āAdecorate.php 1.1.13.4669.2 ‚ðUp‚µ‚Ä‚ ‚è‚Ü‚·‚Ì‚ÅŽg‚Á‚Ä‚Ý‚Ä‚­‚¾‚³‚��B


decorate.php‚Í”ñí‚É•Ö—˜‚¾‚ªA¡‰ñAŽ©“®ï¿½ï¿½ï¿½ï¿½‚µ‚½ƒXƒNƒŠƒvƒg‚ð”`‚��‚Ă݂āA­‚µƒCƒ}ƒCƒ`‚¾‚Á‚½

‚�}‚ê‚à‚à‚µ‚©‚·‚é‚Æ bakeƒNƒ‰ƒX‚ɂ‚��‚Ä‚Å‚·‚©ƒlB
’ñˆÄíŽž•åW’†‚Å‚·‚Ì‚Å‚æ‚낵‚­‚�NŠè‚��‚µ‚Ü‚·I

“–‰‚ÍbakeƒNƒ‰ƒX‚ð•ÒW‚µ‚��‚½‚Ì‚Å‚·‚ªAUpdate‚·‚邽‚тɕύX‚·‚é‚Ì‚ª‘å•Ï‚¾‚Á‚½‚̂ŁAdecorateƒNƒ‰ƒX‚ðbakeƒNƒ‰ƒX‚©‚ç”hï¿½ï¿½‚³‚¹‚āA·•ª‚¾‚¯‚ð‘‚­‚悤‚É‚µ‚��‚Ü‚·BdecorateƒNƒ‰ƒX‚Í‚í‚è‚ƕҏW‚µ‚â‚·‚��‚悤‚ɏ‘‚��‚��‚éiƒ^ƒu‚̏ˆ—‚Ȃǁj‚̂ŁA‚Ç‚µ‚Ç‚µ•ÏX‚µ‚Ä‚Ý‚Ä‚­‚¾‚³‚��B‚æ‚낵‚­‚�NŠè‚��‚µ‚Ü‚·B
ƒ‰ƒxƒ‹Fcakephp decorate
posted by SDozono at 11:03| “Œ‹ž ☀| Comment(2) | TrackBack(0) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é

2007”N01ŒŽ25“ú

Do you want to read the missing Wiki?

There are many who want to read the closed wiki pages of CakePHP again.
It's already closed. And some documents became too old to use.
Still, some think that we missed some knowledge about CakePHP....

You can access the historical Wiki even now!
Good news?

go to:
http://web.archive.org/web/20060424173814/http://wiki.cakephp.org/

Then you'll found some pages.
Thanks to the web.archive.org!
You can check the all pages from a URL below.
http://web.archive.org/web/*sa_/http://wiki.cakephp.org
ƒ‰ƒxƒ‹Fwiki cakephp ARCHIVE
posted by SDozono at 20:56| “Œ‹ž ☀| Comment(0) | TrackBack(0) | CakePHP Tips | ‚}‚̃uƒƒO‚Ì“ÇŽÒ‚É‚È‚é | XVî•ñ‚ðƒ`ƒFƒbƒN‚·‚é