cakePHP1.2 アソシーエションでの検索条件指定
なんかタイトルからして表現しづらいのですが、会社ではまっていたのでちょいとメモ。 たとえば、今使おうとしているモデル(A)からモデル(B)にbelongsToして、そのモデル(B)からモデル(C)にbelognsToをしていた場合に、モデルAのfindするとして、findの検索条件にモデル(C)の条件を指定したい場合。…
700 件の記事
なんかタイトルからして表現しづらいのですが、会社ではまっていたのでちょいとメモ。 たとえば、今使おうとしているモデル(A)からモデル(B)にbelongsToして、そのモデル(B)からモデル(C)にbelognsToをしていた場合に、モデルAのfindするとして、findの検索条件にモデル(C)の条件を指定したい場合。…
Paginatorで表示件数とか出すのが意外とめんどくさい。 viewにガシガシ書いていくのはなんかかっこ悪いので、PaginatorHelperを拡張してみました。 app/views/helper/spaginator.php <?php require_once "paginator.php"; class Sp…
formの名前にこんな感じのことがしたかったんですよ。 んで、POSTさせてみたら、エラーが・・・。 おかしい、画面が真っ白い。。。最初は、view作ってないとかなのかなぁーとか思っていたんですが、どうやら様子が違う。。。 apacheのアクセスログ確認んしたら、POSTしたときだけ404になってた・・・。 は?え?見…
昼間の打ち合わせの時に話にでてきたTumblr。 そーいえば、登録していたことを思い出して、使い始めてみました。 てか、バイト先の上司に前に教えてもらったような・・・気もします。が、忘れましたw で、まあ普通に登録して、Firefoxのプラグインとか、入れて使うのもいいし、WordPressのプラグイン使うもよいのです…
最近、バリバリcakePHP使ってます。 とりあえず、バリデート周りで思ったこと。 date型のチェックはあるけれど、datetimeになるとだめなのね・・・。 独自に作ろうと思いましたが、正規表現がんばろうと思ったけど、挫折しました。 あとは、vaidatesが実行できないとき、 data); 見たいな感じにするとか…
cakePHPで簡単なお問い合わせフォーム的なものを作っていたのですが、Formヘルパー使ってエラーメッセージ表示させようとしたら、エラー時のdivタグとかは生成されるのに、肝心なエラーメッセージが表示されないって現象が起きました。 Smarty使ってたせいなのかとかいろいろと考えたのですが・・・。 原因は、model…
シート名とA1のセルの内容を一緒にしたいとかそういう時あると思います。 シート名変えて、A1のセルの名前変え忘れたりとか・・・ そんなときは下記の方法使うと便利です。 =MID(CELL("filename",$A$1),FIND("]",CELL("filename",$A$1))+1,31)
検証用にimagickを入れようと思いpeclでインストールしますた。 pecl install imagick そしたら、エラーが・・・。 よく考えたら、ImageMagick入れてなかった・・・。 気合を入れなおして、ImageMagickからインストールしていきました。 # yum -y install php-…
基本的には「ここ」のサンプルどおりに作っていたのですが、かなりはまってしまっていました。。 メンドイから、GroupをphpMyAdminから値を設定して、Userの登録はこんな感じので書いていたのですが・・・ # vi controllers/users_controller.php <?php class User…
バイトが変わってから、土曜日は休日です。 とりあえず、休みの日にやれることをやってしまおうとおもって、VritualBox上のCnetOS5にtomcatインストールしました。 tomcatだけ動かすってのもかっこ悪いから、apacheのモジュールとしてtomcat動かそうと思いました。 とりあえずログのこしておきます…
CakePHPはDBとModelが1対1の関係になってて、絶対にデータベースなきゃだめかと勘違いしたこともありましたが、やっぱそこは違いますよね。 でもデータベース使わないときはどういう風にすればいいかわからなかったんですが、こうすればいいんですね。 一応忘れないためにメモしておきます。 class Hoge exte…
そんなのもあったなーとか思ってて、要はfor eachじゃね?とかおもったり思わなかったり。 あまり詳しくわかっていなかったので、サンプルソースコード書いておきます。 class Hello { public static void main(String args[]) { int [] a = {1,2,3}; f…
XMLの名前宣言でたとえば <ns1:member /> </memberlist> となっているときに、memberlist要素とmember要素は同じ名前空間に属しているか? というのが授業中に問題になりました。 テキストと資料プリントでは食い違いがあり、テキストでは、同じ名前空間ではない。 資料プリントでは、同じ…
インスタンスイニシャライザと引数なしのコンストラクタの違いがわかりません。 どういうタイミングでインスタンスイニシャライザを使えばいいのだろうか・・・
学校で、yumコマンドとかwgetコマンドが使えない・・・と思っていたら、proxyのせいで、使えなかったです。 とりあえず、一時的な回避方法としては export http_proxy = "http://プロキシサーバー名:ポート" これで、大丈夫っす。 学校の環境で、VMwareで上でyum使いたい放題ですw
PHPのフレームワークに関してはEthnaしか使ったことなかったのですが、cakePHPを使ってみることにしました。 家で使うだけのツールもcakePHPで作ってみます。 cakePHP1.2を導入するにあたってのメモ書いておきます。 もっと良い情報が他のサイトにあると思うので、ググってさがしてください。 あと間違って…
ひさしぶりにMDB2をつかって書いていたのですが、PEAR::DBと同じ仕様かと思ってプリペアステートメント使ってみたらエラーがでた。。 <?php $db = MDB2::connect($dsn); $db->loadModule('Extended', null, false); $sql = "SELECT *…
新しいバイトが始まったポリドッグです。 今度のバイトはソースコード書けるし、かなりスキルアップになる予感がします。 あとは自分のがんばり次第だと思います。 そんな、僕ですが、今日授業中に暇なので、ケブンッリジ ジネェーレタをJavaで書いていました。 本家よりは劣りますが・・・。 本家のソースコードはほぼ読んでないに等…
MDB2使ってたんですが、fetchRowするときにObjectで値が返ってこないと思ったら、書き方間違えてますた・・・。 <?php $res->fetchRow(DB_FETCHMODE_OBJECT); ?> って書いてました。。。 正しくは <?php $res->fetchRow(MDB2_FETCHMODE…
昔から独自のクラス使っているのですが、久しぶりにメンテしてみました。 メンテというか、PHP5用に書き換えているといったほうが正しいと思います。 まあ大体できあがってきたのですが、あとはフォームを自動的に生成させる機能も付け加えたいのですが、やっぱSmarty使わなきゃかなーとか悩んでいます。 用はEthnaのフォーム…
前に書いたソースコードをPHP5らしい書き方で直していたのですが、あれと思うことが 静的メソッドを書くときに「static」とつけるのですが、若干微妙なのが <?php class hoge { public static function test(){ print "testメソッドを表示"; } } ?> これが…
1つの商品しか扱えないプログラムです。 暇があれば今週末あたりにコレクションフレームワークをつかって何個も商品扱えるようにしてみたい。。 実装パターンのテキストとか見て自分なりにがんばって書いたのですが・・・なんかうまく実装パターン(Composed Methodパターン)っぽく書けないス。。 Cartって名前になって…
2年生になってLinuxの授業が始まりました。 当初の予定ではubuntuをインストールするみたいなこと言ってような気がしますが、しっかりとLinuxの基礎から勉強できそうな授業です。 で、環境として与えられたのはwindowsにVMwareがインストールしてあって、VMware上でCentOSを使って実習をしています…
学校が今週から始まりました。 簡単なJavaの復習をしているため、とてもとても暇です。 ということで、newしまくろうと思いソースコードを書いてみました。 Polidog.java class Polidog{ String name; int age; public void addName(String _name…
僕が今使っているEthnaのバージョンが2.3.5なんですが、そこでのお話です。 学校が春休みに入る前に担任の先生と話していたことを思い出して、ちょっとEthnaでコード書いてみることにしました。 で、DB側の文字コードがutfだったので文字化けを起こしてしまい、あばばあばばという状況でした。 僕としてはEUCを使いた…