*

恋に落ちるブログを作ってみる

公開日: : FuelPHP

a0002_007781_m.jpg
FuelPHPをインストールしたら、お約束の簡易ブログを書いてみる。


最初にデータベースの設定。今回は一般的なヤツで。普通にMySQLで。

CREATE TABLE `posts` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(255) NOT NULL,
`summary` varchar(255) NOT NULL,
`body` text,
`created_at` int(11) NOT NULL,
`updated_at` int(11) NOT NULL,
PRIMARRY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

created_atとupdated_atは登録日と更新日だな。たぶんどこかで自動的に書き込まれるようにするんじゃないだろうかと妄想。単なるお約束なのかもしれないけど。
次はdb.phpを編集してDBを読めるようにする。db.phpというファイルはいろいろな場所にあるので注意。
/fuel/app/config/development/db.php

return array(
'default' => array(
'connection'  => array(
'dsn'        => 'mysql:host=mysql***.phy.lolipop.jp;dbname=LA017*******-***',
'username'   => 'LA017*******',
'password'   => '*************',
),
),
);

Modelの作成

FuelPHPではSQLを使うのに4種類の方法があるようだ。一番シンプルな方法がDBクラスを使いSQL文をそのまま書いてしまう方法。
DB::query(‘SELECT * FROM users WHERE id = 5’);
色々なフレームワークでも同じだけど、これはお勧めできない。あまり考えられないがDBを変更する時に面倒な作業になることがひとつ。それとデータのエスケープを自分で行う手間もある。詳細はPHPセキュリティで勉強してね。
2番めはクエリビルダを使う方法。これを使うと上記の問題点がほぼ解決できる。つまりDBの違いをFuelPHP側で吸収してくれて、データのエスケープも自動処理って訳だ。
DB::select(‘title’,’content’)->from(‘articles’)->execute()->get(‘title’);
そしてCRUDというやつ。Create retrieve? update deleteの頭文字らしい。これはよく使うSQL文を、より簡単に書くことができたり、データの検証があったりすると…。ってことは上のクエリビルダだと検証できないの?と疑問がわくけど。このあたりを中心に開発ってのが王道なのかな?
$entry = Model_Article::find_all();
そしてOrmってやつ。ここまでくると理解が怪しくなってくるのだが、どうやらリレーション関係を扱うようになっている仕組みらしい。 has_manyみたいな。CakePHPあたりで悩んだ思い出が蘇る^^;
最後にちょっと特殊な viewModelってのをモデルついでに書いておく。
これはviewに複雑なロジックを書きたくない場合に使えるようだ。例えばDBで県名を数値IDで持たせている場合。そのままだと表示が数字になる。これを県名に変換したいという場合などに使えるらしい。
viewやcontrollerと絡んでくる部分なので、後ほどまとめてみることにして先に進む。
続くよー


Sponsored Link


 
 

関連記事

no image

ああ Xcode よ

インストールも無事に終わりスタート台にたつことができた。 いや~時間がかかるかかる。かなりでかいのね

記事を読む

no image

実弾射撃してみたい

韓国で実弾射撃できる店を発見。 釜山の西面(ソミョン)ロッテホテルの裏側です。 次回は挑戦してみま

記事を読む

PowerShot SX700 HS 到着&開封

もちろん動画撮影まで考えての選定。それに普段撮影用です。スマートフォンのカメラよりは綺麗になるんじゃ

記事を読む

no image

Member Model を作る

/app/models/member.php ここで作るファイル名はテーブル名と関連している。 テ

記事を読む

大公開!私のスーパー 3-Axis Brushless GImbal 君

真夏のような気温の日が続いています。みなさまお元気でしょうか?ここらでひとつ私のブラシレスギンバルを

記事を読む

ご質問は掲示板へお願いいたします。

Message

メールアドレスが公開されることはありません。

CAPTCHA


Optionally add an image (JPEG only)

Sponsored Link

エレコム GRAPH GEAR NEO カメラバッグDGB-P01BKにジンバルを入れる

やっぱり高いけどEndurance (エンデュランス) カメラバッグの

エレコム GRAPH GEAR NEO カメラバッグDGB-P01BKが北の国から

一年中GWの美少女です。 Lowepro カメラリュック フリッ

MOZA Mini-S スマホ用スタビライザーが届いた!

1万円弱で買えるスマホ用ブラシレスジンバルの新型 MOZA Mini-

GoPro Hero7 Black用 保護ケース アルミ合金保護フレームがいいよって話

別に大した話ではありません。 最近書くことが少ないのでたまには書

期待の新製品 MOZA Mini-S スマホ用スタビライザーが発売されたみたい

教えてもらった新製品のホームページで MOZA Mini-Sが紹介され

→もっと見る




  •  

PAGE TOP ↑