Archive for the ‘FuelPHP’ Category

このエントリーをはてなブックマークに追加
[`livedoor` not found]

■Fuelphpにて環境の振り分け例

bootstrap.php の編集を行い、開発環境や本番環境の振り分けを行う。

例)
・ポートが8080の場合 → staging環境
・ホストが”localhost”の場合 → development環境
・上記に該当しない場合 → production環境

VN:F [1.9.22_1171]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)
このエントリーをはてなブックマークに追加
[`livedoor` not found]

考えてみれば単純なことなのにハマったので備忘録に残します。
ハマった時のケースはModule Aから共通Module(例ではModule B)のデータを表示する際にModule AのViewでModule BのModelをどう呼び出すか、というもの。(そもそも設計云々に問題があるというのは割愛します・・・)

■module Aからmodule BのModelを呼び出す場合。

module Aで

と記述し、Module Bを読み込む。
確認方法は、

とすれば、呼び出されていることが確認できます。

Modelでデータを取得する際は、

というように、namespace(module名)を付ければ呼び出すことができます。

 

・・・何でこんなに悩んだんだろう。。。

 

VN:F [1.9.22_1171]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)
このエントリーをはてなブックマークに追加
[`livedoor` not found]

FuelPHPのドキュメントにも例がありますが、FuelPHPのValidationでuniqueチェックを作ってみました。
本家の例ではValidationを拡張する例として記載があります。

http://fuelphp.com/docs/classes/validation/validation.html

 

但し、DBへのInsert時は上記の拡張例で問題ないのですが、Update時は、
更新するレコード自身を含めてしまうとuniqueチェックで引っかかってしまうため、除外する必要があります。
その処理を公式ドキュメントの例を参考にコードを追加してみました。

また、コアクラスを拡張しているため、/fuel/app/bootstrap.phpを編集する必要があります。

 

Modelのコード使用例は以下の通りです。

Controllerのコード例は以下の通りです。

■Insert例

■Update例

VN:F [1.9.22_1171]
Rating: 10.0/10 (1 vote cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)
このエントリーをはてなブックマークに追加
[`livedoor` not found]

CodeIgniterからWordprssを呼び出した際に苦労したから、FuelPHPからはどうだろうと思いやってみた。
とりあえずということでまずは投稿された記事が呼び出せるか?(ってか、まだこれしかしてない)
まずは、フォルダの構成。あまり深く考えず、ドキュメントルートにwordpressを置いてみた。

ドキュメントルートの名前はwpplus(適当)

wp_1

 

この状態でwordpressのインストールを実行。

 

次に、 /fuel/app/bootstrap.php の編集を行う。
ポイントは3行目の「 require ‘../wordpress/wp-load.php’; 」の部分。
10行目の「require COREPATH.’classes’.DIRECTORY_SEPARATOR.’autoloader.php’; 」の部分より、
前に呼び出す必要がある。

次に、Controllerの作成。
ポイントは9行目の「 require_once ‘../wordpress/wp-blog-header.php’; 」の部分。
後はWordpressの関数を呼び出すことで記事の一覧を取得出来る。

というわけで、非常に簡単でした。

VN:F [1.9.22_1171]
Rating: 10.0/10 (2 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)
このエントリーをはてなブックマークに追加
[`livedoor` not found]

■modulesについて

・独立して動作させる

・HMVCを利用できる

・独立したルーティングを定義できる

 

■module化の手順

・config.phpの編集

/fuel/app/config/config.php を編集し、有効化する。

・namespaceの設定

Controller や Modelに namespace の設定が必要になる。

■ルーティングの定義方法
/fuel/app/modules/(app名)/config/ にroutes.php を作成し、ルーティングを定義する。
ルーティングは通常の/fuel/app/config/routes.php とまったく同様。

VN:F [1.9.22_1171]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)
このエントリーをはてなブックマークに追加
[`livedoor` not found]

Fuelphpでvalidation結果を日本語表示にする方法。

 

1. fuel/app/config/config.php を編集する。編集箇所は以下の通り。

 

 

以下、編集結果。

 

2. fual/app/lang フォルダ配下に ja という名前のフォルダを作成する。

3. 「2」にて作成したフォルダに validation.phpというファイルを作成する。

4. 「3」で作成した validation.phpを編集する。

以下、編集例。

以上の手順で validation結果が日本語表示されるようになる。

 

VN:F [1.9.22_1171]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)