Home > CakePHP | Lang | PHP > [cakephp1.2]CakePHP1.2でprefixルーティング設定時の注意点。[携帯]

[cakephp1.2]CakePHP1.2でprefixルーティング設定時の注意点。[携帯]

CakePHP1.2.0.7296 RC2で携帯ページを作り始めました。
Versionが1.1の時や、1.2.0.6311 betaなどの時はwebservice機能を使って携帯に対応してましたが、
いつのまにか触らない間にwebservice機能が無くなっていたので、

を参考にしました。基本的にはそのままコードを使わせてもらいました。
あとは、CakePHPガイドブックに載っているMobileComponentや、MobilePictogramConverterで簡単に作れるEmojiComponentを読み込んだりと、以前に作った物をそのまま流用という感じです。

で、肝心の注意点ですが、

Router::connect('/m/:controller/:action/*', array('prefix' => 'mobile'));

とするだけだと、Viewで

< ?php echo $paginator->prev("< < 前へ"); ?> 
< ?php echo $paginator->numbers(); ?> 
< ?php echo $paginator->next("次へ >>"); ?>

と書いていると、携帯用viewは良いんですが、PC用viewでのリンクが
http://localhost:8080/~bubbkis/m/staffs/clientsList/page:2
みたいな感じでPC用の出力画面なのに、URLに「m」が入ってしまいました。
ということで、

if (preg_match("/\/m\//", $_SERVER['REQUEST_URI'])) Router::connect('/m/:controller/:action/*', array('prefix' => 'mobile'));

としましたよ。と。
無駄にRouterクラスまで見に行ったりしてたら半日使っちゃったよ・・・こんだけの事で。

Comments:1

add to hatena hatena.comment (8) add to del.icio.us (0) add to livedoor.clip (0) add to Yahoo!Bookmark (0) Total: 8

通りすがり 09-06-08 (月) 0:42

同じところではまりましたが、こちらの記事を参考に解消できました。
いやはや助かりました。ありがとうございます。

Comment Form
Remember personal info

Trackbacks:2

Trackback URL for this entry
http://ore.saizensen.net/archives/94/trackback
Listed below are links to weblogs that reference
[cakephp1.2]CakePHP1.2でprefixルーティング設定時の注意点。[携帯] from おれ最前線ねっと
pingback from 橋本雄の技術ブログ » cakePHPで携帯表示コントローラーについて 09-09-16 (水) 19:14

[...] http://mick.blog16.jp/index.php/main/2008/10/16/cakephp_prefix_routes http://ore.saizensen.net/archives/94 [...]

trackback from [ま]技術雑記 09-09-28 (月) 11:57

[CakePHP][携帯] Router::connect と$form->create ではまった件。

CakePHP: 高速開発 php フレームワーク。

CakePHP 1.2.5 で モバイルサイトを構築しています。
そこでViewにてformヘルパーでcreateすると、URLにprefixが勝手について困っていました。

Home > CakePHP | Lang | PHP > [cakephp1.2]CakePHP1.2でprefixルーティング設定時の注意点。[携帯]

Search
Feeds
Meta

Return to page top