SmuraiFW
もうね、私環境構築嫌いっすよw 毎回毎回あーこれなんだっけなー?なんていいながら1年位昔に調べた 内容を再度調べるとかもう不毛っ!ってことで備忘録 ■最初の最初とりまユーザー作る useradd <名前> passwd <名前> ■Git関連gitが入ってない場合は適当に入れ…
今流したSQLのレコード数を取りたい時ってありますよね、 foreeachでまわして取ればソースが汚くなるし、 count(*)で取得すると今度はもう一回同じクエリを投げないといけなくなるので、 性能が落ちる。こんな時はSQL_CALC_FOUND_ROWSを使えばcount(*)よ…
たとえば/component/yml/test.ymlって設定ファイルを作って、 こいつに直接問い合わせたい場合は $test = Samurai_Yaml::load(/component/yml/test.yml); var_dump($test); こんな感じで問い合わせ可能。
よくやる手法です。以下の用に書きます。 //こんな配列があったとしてこれをOR連結したい $arr = ('win32','winXp','winVista','wix7'); $condition = $this->AG->getCondition(); //OR句の初期化 $condition->where->test = $condition->isOr(); //まわしな…
like文の書き方 $hoge = '対象'; $cond = $this->AG->getCondition(); $cond->where->name = $cond->isLike("%".$hoge."%");
LIMITを書く機会があったので覚書 $cond = $this->AG->getCondition(); $cond->setLimit = (10) $cond->setOffset($this->Request->get('page', 1)); setLimitは取得件数、このsetOffsetの第一引数でページングの処理がついでにできる。 もし$this->Req…
スケルトン?って感じでしたが、 用はsamurai add-actionとかで作成されるデフォルトのテンプレートを雛形として 変更できるってことです。場所は、/skeleton/直下にいろいろなスケルトンがあります。 たとえば自動生成されるactionを変更したい場合は/skele…
Validateは結構使えるようになってきたところで、 たとえば、ユーザーが全角数字を入力したけど、エラーで半角数字で登録してください。 って言うのは結構簡単にできるんだけど、 それをユーザビリティをあげるために全角数字を半角数字にコンバートするとか…
たとえばdispatch専用のActionを作成したい場合は以下のようにコマンドを使って作成する。 $ samurai add-action actionname --no-templateこうすればテンプレートファイルを作成しないでactionを作成することができる
たとえば簡単なサイトでも定数とかって使うと思うんですけど、 じゃぁその定数とか設定ファイルを置くのってどこよ?ってなると結構意見が分かれますよねー。今回も、実装時にそんな疑問にぶち当たって、 「どこにおけばいいんだ?」 つか定数以外でも全画面…
本来samuraiFwにはsamurai.cssというcssファイルが以下のパスに存在していますが、 /www/samurai自分のCSSを使いたい場合はこのwww直下にcssという名前のファイルを作成して、 そこに自分のcssファイルをおきます。後は自分テンプレートファイルのメタタグを…
前回の講義でspecとmodelを実装しましたー。で、必要なtableをすべて作成して、 specを用意して、modelを作成してエラーがぜーんぶ出なくなったら。いよいよ画面の実装に入っていきます。 っとその前に必要な編集があるということなので、まずはそこからやっ…
たとえばmoneyカラムの合計値を取得したい場合。コンディションは以下のような書き方でおk。 $cond = $this->AG->getCondition(); $cond->select = 'SUM(`money`)';ちなみにエイリアスをつけることできる。 $cond->selecrt = 'SUM(`money`) as totalmoney';…
前回までに行ったことで、SamraiFWを動かすことができてるはずです。 さて、これから私か勉強がてら作るのは家計簿システムです。実際なんでもいいのですが、前に自前で作成したことがあったのですが、 それはPHPでべたで書いていました。それを今回SamuraiF…
VMware3.1 + Fedora13 for windowsXP(windows7でも大丈夫だよ。)テスト環境然り、自分で好き勝手する環境を作成する方法を教えてもらったので覚書。●用意するものVMware-player-3.1.0-261024.exe //VMwara本体ネットからダウンロードFedora-13-i686-Live.is…
VMware3.1 + Fedora13 for windowsXP(windows7でも大丈夫だよ。)テスト環境然り、自分で好き勝手する環境を作成する方法を教えてもらったので覚書。●用意するものVMware-player-3.1.0-261024.exe //VMwara本体ネットからダウンロードFedora-13-i686-Live.is…
VMware3.1 + Fedora13 for windowsXP(windows7でも大丈夫だよ。) テスト環境然り、自分で好き勝手する環境を作成する方法を教えてもらったので覚書。 ●用意するもの VMware-player-3.1.0-261024.exe //VMwara本体ネットからダウンロード Fedora-13-i686-Liv…
VMware3.1 + Fedora13 for windowsXP(windows7でも大丈夫だよ。) テスト環境然り、自分で好き勝手する環境を作成する方法を教えてもらったので覚書。 ●用意するもの VMware-player-3.1.0-261024.exe //VMwara本体ネットからダウンロード Fedora-13-i686-Liv…
VMware3.1 + Fedora13 for windowsXP(windows7でも大丈夫だよ。) テスト環境然り、自分で好き勝手する環境を作成する方法を教えてもらったので覚書。 ●用意するもの VMware-player-3.1.0-261024.exe //VMwara本体ネットからダウンロード Fedora-13-i686-Liv…
適当にDBから値を取得してobjにレコードが入っているとき。画面でもしも対象レコードが0だったら 「取得できませんでした」的なアラートをあげたいときってありますよね。そんなときはこれ。 getTotalRows これはActiveGataWayで取得したレコードの数が取れ…
ある値と比較して大きいレコードを取得したいとかその逆とか実装してれば必ず必要になることだと思いますが。 今日はそんな備忘録。今まではこんな感じで書いていた。 ※前提としてoptionclassを実装していて、optionテーブルにはidカラムが存在しているとし…
→データ取得方法上記のような取得方法にプラスまぁ実装していれば必ず必要になるソートの方法 DateTest->getCondition(); $helpCon->where->active = "1"; //ソート条件はidのDESC $helpCon->order->id = 'DESC'; //アサイン $this->testValue= $this->DateT…
あれれ?samuraiFwはgetもpostも同じ扱いになっています。ってのはわかっていたんっだけどなぜかし得できない。なんでだろうなぁ〜? Request->id; ?> これかなり忘れがちだけど以下が正解 Request->get('id'); ?> よくつまずくorz
Samurai FWでではORマッパー的なことを結構しっかりやってくれる。 個人的にはiBatisといい勝負するくらいがんばってると思う。 でも最初に使うときにはいろいろやることがあるので、結構面倒になることがあるので、 備忘録的にここに残しておくことにするま…
samurai.yml Validate: name.required : '名前を入力してください' View: invalidInput : 'action:diary_update_manager'これでフォームの名前がnameの必須チェックができる。 この入力チェックに引っかかった場合にはinvalidInputがreturnされるので、View…