Submit Search
Upload
CakePHPのレールの外し方 (CakePHP勉強会@uluru 20130419)
•
8 likes
•
6,271 views
ichikaway
Follow
CakePHPのレールの外し方 (CakePHP勉強会@uluru 20130419)
Read less
Read more
Technology
Report
Share
Report
Share
1 of 36
Recommended
継続的セキュリティテストVaddy説明資料
継続的セキュリティテストVaddy説明資料
ichikaway
phpcon kansai 20140628
phpcon kansai 20140628
ichikaway
fukuokaphp7 PHP x twilio
fukuokaphp7 PHP x twilio
ichikaway
Webサービスを作るときの9の間違い
Webサービスを作るときの9の間違い
Yusuke Katsuki
MVCのVを極めしWebデザイナーになる - CakePHP勉強会
MVCのVを極めしWebデザイナーになる - CakePHP勉強会
Kazuhiro Hara
フリーでやろうぜ!セキュリティチェック!
フリーでやろうぜ!セキュリティチェック!
zaki4649
バズる技術
バズる技術
Masatoshi Someya
インフラ運用管理ツールとGolang OSS運用管理勉強会LT
インフラ運用管理ツールとGolang OSS運用管理勉強会LT
Daisuke Ikeda
Recommended
継続的セキュリティテストVaddy説明資料
継続的セキュリティテストVaddy説明資料
ichikaway
phpcon kansai 20140628
phpcon kansai 20140628
ichikaway
fukuokaphp7 PHP x twilio
fukuokaphp7 PHP x twilio
ichikaway
Webサービスを作るときの9の間違い
Webサービスを作るときの9の間違い
Yusuke Katsuki
MVCのVを極めしWebデザイナーになる - CakePHP勉強会
MVCのVを極めしWebデザイナーになる - CakePHP勉強会
Kazuhiro Hara
フリーでやろうぜ!セキュリティチェック!
フリーでやろうぜ!セキュリティチェック!
zaki4649
バズる技術
バズる技術
Masatoshi Someya
インフラ運用管理ツールとGolang OSS運用管理勉強会LT
インフラ運用管理ツールとGolang OSS運用管理勉強会LT
Daisuke Ikeda
130821 owasp zed attack proxyをぶん回せ
130821 owasp zed attack proxyをぶん回せ
Minoru Sakai
ISO/IEC 27034 Application Security – How to trust, without paying too much!
ISO/IEC 27034 Application Security – How to trust, without paying too much!
PECB
Twilio を使えば簡単にできる アプリケーションと電話/SMS連携
Twilio を使えば簡単にできる アプリケーションと電話/SMS連携
Masashi Shinbara
脆弱性検査ツールってどうよ
脆弱性検査ツールってどうよ
Masakazu Ikeda
とある診断員とAWS
とある診断員とAWS
zaki4649
運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうか
Masahito Zembutsu
Buffer overflow
Buffer overflow
ionis111
第8回脆弱性診断入門
第8回脆弱性診断入門
ionis111
DataRobot活用状況@リクルートテクノロジーズ
DataRobot活用状況@リクルートテクノロジーズ
Recruit Technologies
AWS Black Belt Tech シリーズ 2016 - Amazon CloudFront
AWS Black Belt Tech シリーズ 2016 - Amazon CloudFront
Amazon Web Services Japan
anything-php-funcref-perl.el
anything-php-funcref-perl.el
Kenichirou Oyama
Creators meetup5
Creators meetup5
Kenichi Mukai
魔法少女 Laravel
魔法少女 Laravel
Kenichi Mukai
FukuokaPHP 3
FukuokaPHP 3
ichikaway
CakePHP3ウォークスルー
CakePHP3ウォークスルー
Tomoki Hasegawa
Pipelight でSilverlightを / RaspberryPi でリアルタイム動画配信をその3
Pipelight でSilverlightを / RaspberryPi でリアルタイム動画配信をその3
Kenichiro MATOHARA
実"戦"CakePHP Plugin
実"戦"CakePHP Plugin
Kenichirou Oyama
Laravelのeloquent だけ入れた話
Laravelのeloquent だけ入れた話
Masataka Kono
第2回webデザイナー向けcake php勉強会
第2回webデザイナー向けcake php勉強会
Shusuke Otomo
forteeに脆弱性検査をかけてみた VAddy編
forteeに脆弱性検査をかけてみた VAddy編
ichikaway
Understanding Computer Architecture with NES Emulator
Understanding Computer Architecture with NES Emulator
ichikaway
VAddyの課金システムを Stripeに乗り換えた話
VAddyの課金システムを Stripeに乗り換えた話
ichikaway
More Related Content
Viewers also liked
130821 owasp zed attack proxyをぶん回せ
130821 owasp zed attack proxyをぶん回せ
Minoru Sakai
ISO/IEC 27034 Application Security – How to trust, without paying too much!
ISO/IEC 27034 Application Security – How to trust, without paying too much!
PECB
Twilio を使えば簡単にできる アプリケーションと電話/SMS連携
Twilio を使えば簡単にできる アプリケーションと電話/SMS連携
Masashi Shinbara
脆弱性検査ツールってどうよ
脆弱性検査ツールってどうよ
Masakazu Ikeda
とある診断員とAWS
とある診断員とAWS
zaki4649
運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうか
Masahito Zembutsu
Buffer overflow
Buffer overflow
ionis111
第8回脆弱性診断入門
第8回脆弱性診断入門
ionis111
DataRobot活用状況@リクルートテクノロジーズ
DataRobot活用状況@リクルートテクノロジーズ
Recruit Technologies
AWS Black Belt Tech シリーズ 2016 - Amazon CloudFront
AWS Black Belt Tech シリーズ 2016 - Amazon CloudFront
Amazon Web Services Japan
Viewers also liked
(10)
130821 owasp zed attack proxyをぶん回せ
130821 owasp zed attack proxyをぶん回せ
ISO/IEC 27034 Application Security – How to trust, without paying too much!
ISO/IEC 27034 Application Security – How to trust, without paying too much!
Twilio を使えば簡単にできる アプリケーションと電話/SMS連携
Twilio を使えば簡単にできる アプリケーションと電話/SMS連携
脆弱性検査ツールってどうよ
脆弱性検査ツールってどうよ
とある診断員とAWS
とある診断員とAWS
運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうか
Buffer overflow
Buffer overflow
第8回脆弱性診断入門
第8回脆弱性診断入門
DataRobot活用状況@リクルートテクノロジーズ
DataRobot活用状況@リクルートテクノロジーズ
AWS Black Belt Tech シリーズ 2016 - Amazon CloudFront
AWS Black Belt Tech シリーズ 2016 - Amazon CloudFront
Similar to CakePHPのレールの外し方 (CakePHP勉強会@uluru 20130419)
anything-php-funcref-perl.el
anything-php-funcref-perl.el
Kenichirou Oyama
Creators meetup5
Creators meetup5
Kenichi Mukai
魔法少女 Laravel
魔法少女 Laravel
Kenichi Mukai
FukuokaPHP 3
FukuokaPHP 3
ichikaway
CakePHP3ウォークスルー
CakePHP3ウォークスルー
Tomoki Hasegawa
Pipelight でSilverlightを / RaspberryPi でリアルタイム動画配信をその3
Pipelight でSilverlightを / RaspberryPi でリアルタイム動画配信をその3
Kenichiro MATOHARA
実"戦"CakePHP Plugin
実"戦"CakePHP Plugin
Kenichirou Oyama
Laravelのeloquent だけ入れた話
Laravelのeloquent だけ入れた話
Masataka Kono
第2回webデザイナー向けcake php勉強会
第2回webデザイナー向けcake php勉強会
Shusuke Otomo
Similar to CakePHPのレールの外し方 (CakePHP勉強会@uluru 20130419)
(9)
anything-php-funcref-perl.el
anything-php-funcref-perl.el
Creators meetup5
Creators meetup5
魔法少女 Laravel
魔法少女 Laravel
FukuokaPHP 3
FukuokaPHP 3
CakePHP3ウォークスルー
CakePHP3ウォークスルー
Pipelight でSilverlightを / RaspberryPi でリアルタイム動画配信をその3
Pipelight でSilverlightを / RaspberryPi でリアルタイム動画配信をその3
実"戦"CakePHP Plugin
実"戦"CakePHP Plugin
Laravelのeloquent だけ入れた話
Laravelのeloquent だけ入れた話
第2回webデザイナー向けcake php勉強会
第2回webデザイナー向けcake php勉強会
More from ichikaway
forteeに脆弱性検査をかけてみた VAddy編
forteeに脆弱性検査をかけてみた VAddy編
ichikaway
Understanding Computer Architecture with NES Emulator
Understanding Computer Architecture with NES Emulator
ichikaway
VAddyの課金システムを Stripeに乗り換えた話
VAddyの課金システムを Stripeに乗り換えた話
ichikaway
Hello, Worldまで3ヶ月 Golangでファミコンエミュレータ実装 #gocon fukuoka 2019
Hello, Worldまで3ヶ月 Golangでファミコンエミュレータ実装 #gocon fukuoka 2019
ichikaway
ゼロから始めるファミコンエミュレータ生活 PHPerKaigi2019
ゼロから始めるファミコンエミュレータ生活 PHPerKaigi2019
ichikaway
現場で使える脆弱性検査サービス VAddy
現場で使える脆弱性検査サービス VAddy
ichikaway
OS入門 Fukuoka.php vol.18 LT資料
OS入門 Fukuoka.php vol.18 LT資料
ichikaway
Yapc8oji: セキュリティテストサービスを開発運営してきた2年
Yapc8oji: セキュリティテストサービスを開発運営してきた2年
ichikaway
VAaddyとは VAddyミートアップvol3_20160629
VAaddyとは VAddyミートアップvol3_20160629
ichikaway
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
ichikaway
脆弱性もバグ、だからテストしよう DevSummiFukuoka
脆弱性もバグ、だからテストしよう DevSummiFukuoka
ichikaway
Vulnerabilities are bugs, Let's test for them!
Vulnerabilities are bugs, Let's test for them!
ichikaway
脆弱性もバグ、だからテストしよう!
脆弱性もバグ、だからテストしよう!
ichikaway
継続的Webセキュリティテスト PHPカンファレンス関西2015 LT
継続的Webセキュリティテスト PHPカンファレンス関西2015 LT
ichikaway
継続的Webセキュリティテスト testing casual talks2
継続的Webセキュリティテスト testing casual talks2
ichikaway
Ctf2015 ichikawa Eizoku PM2.5 dial
Ctf2015 ichikawa Eizoku PM2.5 dial
ichikaway
VAddy - CI勉強会 fukuoka
VAddy - CI勉強会 fukuoka
ichikaway
Jenkinsを使った継続的セキュリティテスト
Jenkinsを使った継続的セキュリティテスト
ichikaway
VAddy at LL Diver LT
VAddy at LL Diver LT
ichikaway
福岡xTwilio twilio meetup
福岡xTwilio twilio meetup
ichikaway
More from ichikaway
(20)
forteeに脆弱性検査をかけてみた VAddy編
forteeに脆弱性検査をかけてみた VAddy編
Understanding Computer Architecture with NES Emulator
Understanding Computer Architecture with NES Emulator
VAddyの課金システムを Stripeに乗り換えた話
VAddyの課金システムを Stripeに乗り換えた話
Hello, Worldまで3ヶ月 Golangでファミコンエミュレータ実装 #gocon fukuoka 2019
Hello, Worldまで3ヶ月 Golangでファミコンエミュレータ実装 #gocon fukuoka 2019
ゼロから始めるファミコンエミュレータ生活 PHPerKaigi2019
ゼロから始めるファミコンエミュレータ生活 PHPerKaigi2019
現場で使える脆弱性検査サービス VAddy
現場で使える脆弱性検査サービス VAddy
OS入門 Fukuoka.php vol.18 LT資料
OS入門 Fukuoka.php vol.18 LT資料
Yapc8oji: セキュリティテストサービスを開発運営してきた2年
Yapc8oji: セキュリティテストサービスを開発運営してきた2年
VAaddyとは VAddyミートアップvol3_20160629
VAaddyとは VAddyミートアップvol3_20160629
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう DevSummiFukuoka
脆弱性もバグ、だからテストしよう DevSummiFukuoka
Vulnerabilities are bugs, Let's test for them!
Vulnerabilities are bugs, Let's test for them!
脆弱性もバグ、だからテストしよう!
脆弱性もバグ、だからテストしよう!
継続的Webセキュリティテスト PHPカンファレンス関西2015 LT
継続的Webセキュリティテスト PHPカンファレンス関西2015 LT
継続的Webセキュリティテスト testing casual talks2
継続的Webセキュリティテスト testing casual talks2
Ctf2015 ichikawa Eizoku PM2.5 dial
Ctf2015 ichikawa Eizoku PM2.5 dial
VAddy - CI勉強会 fukuoka
VAddy - CI勉強会 fukuoka
Jenkinsを使った継続的セキュリティテスト
Jenkinsを使った継続的セキュリティテスト
VAddy at LL Diver LT
VAddy at LL Diver LT
福岡xTwilio twilio meetup
福岡xTwilio twilio meetup
Recently uploaded
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
Recently uploaded
(8)
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
CakePHPのレールの外し方 (CakePHP勉強会@uluru 20130419)
1.
CakePHPのレールの外し方 CakePHP勉強会#1 at uluru @cakephper
/ @ichikaway 13年4月25日木曜日
2.
市川 快 @cakephper Fukuoka.php主催 13年4月25日木曜日
3.
CakePHP2 実践入門 13年4月25日木曜日
4.
レール? レールに乗る CakePHPがデフォルトで色々裏でやってくれてる 規約に従えばある程度の動きが少ないコードで実現 13年4月25日木曜日
5.
レール? レールをはずす(はずれる) CakePHPのデフォルト動作を変える 細かいカスタマイズが可能 一部不整合が出る場合がある 13年4月25日木曜日
6.
何のために? 生産性 納期、コスト プロジェクトメンバー サーバ環境・スペック 13年4月25日木曜日
7.
CakePHPはどこまで デザイナ寄りに なれるのか? 13年4月25日木曜日
8.
主にプログラマ作業の 話をします 13年4月25日木曜日
9.
想定ケース Viewファイルにphpコードを組み込んだ後もhtmlの レイアウト修正が頻発するケース向き デザイナ側はPHPの実行環境が無い html, css, jsファイルのみでブラウザ確認 13年4月25日木曜日
10.
ケース1: .ctpやめてー 13年4月25日木曜日
11.
.ctpを.htmlに変更 Viewファイル名 app/View/Posts/index.ctp 13年4月25日木曜日
12.
.ctpを.htmlに変更 コントローラの $extプロパティを変更 class AuthorsController
extends AppController { public $ext = '.html'; } 13年4月25日木曜日
13.
ケース2: レイアウトファイルやめてー 13年4月25日木曜日
14.
View/Posts/index.ctp View/Layout/default.ctp Header Footer View/Posts/add.ctp View/Layout/default.ctp Header Footer 13年4月25日木曜日
15.
View/Posts/index.ctp Header Footer View/Posts/add.ctp Header Footer 13年4月25日木曜日
16.
レイアウトOFF class AuthorsController extends
AppController { public $layout = false; } 13年4月25日木曜日
17.
レイアウトOFF メリット htmlとして全ての要素が1ファイルに入ってる ブラウザで正常に表示できる デメリット 冗長(修正工数高い) DWなどのツールで解決?? 13年4月25日木曜日
18.
ケース3: ディレクトリ構成が URLのパスとちがう!! 13年4月25日木曜日
19.
初期htmlファイルの構成 |- public_html/ |-posts/ |-index.html |- css/ |
|- base.css |- js/ 13年4月25日木曜日
20.
CakePHPの構成 app/ |- View/ | |-
Posts/ | |- index.ctp | |- webroot/ |- index.php |- css/ | |- base.css |- js/ URL: /posts/index URL: /css/base.css 13年4月25日木曜日
21.
URLのPathと ディレクトリPathの 構造が違う 13年4月25日木曜日
22.
こんな感じにしたい app/ |- webroot/ |- index.php |-
Posts/ | |- index.html |- css/ | |- base.css |- js/ URL: /posts/index URL: /css/base.css URLと実ファイルの 相対パスが同じ 13年4月25日木曜日
23.
ディレクトリ構成の変更 方法1 シンボリックリンクを貼る ln -s
app/webroot/Posts app/View/Posts 方法2 viewPathを変更する Viewディレクトリが増えてもシンボリックリンクを 貼る手間が無い 13年4月25日木曜日
24.
問題点 URLを直接指定されても見えないように /posts/index.html ディレクトリを作るとCakePHPにルーティングされ ない 13年4月25日木曜日
25.
解決策 /posts/ , /posts/index
などのURL 全て webroot/index.phpにリダイレクト mod_rewrite 13年4月25日木曜日
26.
リダイレクト設定 app/ |- webroot/ |- index.php |-
Posts/ | |- .htaccess | |- index.html |- css/ | |- base.css |- js/ <IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^$ ../ [L] RewriteRule (.*) ../$1 [L] </IfModule> 13年4月25日木曜日
27.
Viewディレクトリの変更 class PostsController extends
AppController { public function beforeFilter() { $this->viewPath = '../webroot/' . $this->viewPath; } } ../webroot/Posts/ (app/Viewからの相対パスを指定) 13年4月25日木曜日
28.
ケース4: PHPコードが多すぎ! 13年4月25日木曜日
29.
Helperなどを使わない cssやjsの指定はhtmlべた書き <?php echo $this->Html->css('cake.generic');
?> <link rel="stylesheet" href="../css/cake.generic.css"> 13年4月25日木曜日
30.
Helperなどを使わない Formヘルパーは極力使わない <?php echo echo
$this->Form->input('name'); ?> <input name="data[Author][name]" type="text" id="AuthorName" value="<?php echo h( $this->request->data('Author.name') ); ?>"> 13年4月25日木曜日
31.
ケース5: PHPコードが多すぎ!2 13年4月25日木曜日
32.
PHPTAL使うとか https://github.com/ nojimage/CakePHP-TALTAL 13年4月25日木曜日
33.
まとめ レールをはずせば、ある程度は歩み寄れる 冗長なファイル記述 修正工数とのトレードオフ Html, Form, Jsべた書き 独自実装とのトレードオフ 13年4月25日木曜日
34.
まとめ 正解はないので、目の前の状況を見て 変えていく or 合わせていく 13年4月25日木曜日
35.
今日のコード https://github.com/ichikaway/cake4designer-sample1 13年4月25日木曜日
36.
Thank you 13年4月25日木曜日