あまりCSS3が使えないIE。。
クライアント側がIEのときでもCSS3の機能を使えるようにするために、サーバー側にPIE.htcを設置。
設置したはいいものの、ちゃんと動いてくれなかったのでググったときのメモ。
ちゃんと表示されない場合は各要素に
position:relative
を記述する必要がある。
そうしないとborderやら背景やらが消されてしまう。
あまりCSS3が使えないIE。。
クライアント側がIEのときでもCSS3の機能を使えるようにするために、サーバー側にPIE.htcを設置。
設置したはいいものの、ちゃんと動いてくれなかったのでググったときのメモ。
ちゃんと表示されない場合は各要素に
position:relative
を記述する必要がある。
そうしないとborderやら背景やらが消されてしまう。
二重送信を防止するために、jQueryのプラグインdisableOnSubmitを使うと便利だけれど、使うとname属性を取得できなくなる。
以下のようにsubmitのボタンで処理を振り分けたいときには、振り分けができなくなるので注意が必要。
<?=$this->Html->script('disableOnSubmit')?> <script> $(function(){ $('form').disableOnSubmit(); }); </script> ...... $this->Form->submit('削除', array('name' => 'delete')); ...... $this->Form->submit('修正', array('name' => 'edit')); ......
二重送信防止は修正のときだけでいいよって場合は、次のようにする。
ただしこのときも、修正のsubmitのname属性は取得できない。
<?=$this->Html->script('disableOnSubmit')?> <script> $(function(){ $('form').disableOnSubmit('.submit'); }); </script> ...... $this->Form->submit('削除', array('name' => 'delete', 'div' => false)); ...... $this->Form->submit('修正', array('name' => 'edit')); ......
ってことで、処理を振り分けたい場合は別の方法を考えないといけない。
追記 2011/09/24
cakephp-netbeans pluginを少し修正したものを公開しました。
CakePHP cakephp-netbeans plugin
下記の内容は古いので上記のリンク先を参照して下さい。
★★★追記 2011/05/28 Themeを使っていると、Controller ⇔ View 間の移動は効かなくなるようです。
よってプロジェクトに小さなアイコンを表示するだけになってしまいますw
書くまでもないですが、2.0では何もかわりません。
上のプラグインを使うとTheme使用時も動きます。
今まではEclipse + Aptanaを使っていたけど、
githubにcakephp-netbeansなるものを見つけたので、NetBeansを使ってみることにした。
下記から必要なものをダウンロードし展開しておく。(※上記の追記したリンク先を参照して下さい)
①プラグインの追加
[Tools]->[Plugins]->[Available Plugins]
NetBeans Plugin Development
②cakephp-netbeans のプロジェクトの追加
[File]->[Open Project]
展開したフォルダを指定する。
③nbmファイルの作成
※最初にプロジェクトのプロパティを開いてSource level が1.5になっていることを確認。(1.6だとエラーだった。。。ここでしばらくはまってしまったorz)
自分がforkしてコードを追加しているものはソースコードは1.6で動くはずです。
追加したプロジェクト(CakePHP Framework)の上で右クリック -> Create NBM
Filesタブをクリックするとbuildというディレクトリが作成されていて
org-cakephp-netbeans.nbmというファイルが作成されます。
④プラグインの追加
①と同様で[Downloaded]タブを開き、
Add Pluginsボタンをクリック
③で作ったnbmファイルを追加
これでCakePHP Framework Pluginが追加される。
でも、見た目は何がかわったのかサーっパリわかんね。。。
新規にPHPプロジェクトを作成し、cakephpの中身のフォルダを全部入れるだけ。
(app/ cake/ 等)
通常のPHPプロジェクトの表示の右上に小さくCakePHPのロゴが表示されます。
gitのREADMEファイルには、
actions: bake, go to view, go to action
と記載されています。
ということで、bakeができるんだな。
あとは何だ?って思っていたけど、操作しているときに気がつきました。
Controllerのaction とviewのファイルを行き来できるようです。
具体的には、
HogeContorllerのindex()メソッドの中で、
[右クリック]->[Navigate]->[Go to View]
Viewのindex.ctpファイルで
[右クリック]->[Navigate]->[Go to Action]
ってすれば、お互いのファイルに飛びます!!
右クリック面倒!!ってなときは
[Tools] ->[Options]->keymap
の
PHP: Go to Action or View
にショートカットキーを割り当てればOKです。
それでもう一つのbakeの方は、
CakePHPプロジェクトの上で
[右クリック] -> [CakePHP] ->[Bake]
で動くようです。
でも使い方がわかりません。。。orz
知っている人がいたら教えてください。。
Outputs – bake
っては表示されるけれど、どう使えばいいのだか。。。
bake
bake model
等入力してみましたが、何も起きない。