*

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

公開日: : 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


 
 

関連記事

α6300のオートフォーカスをテストしてみる(桜)

Wordpressを使っているのですが、バージョン4.5にアップデートしたところ画像のアップがうまく

記事を読む

DJI Phantom 4 pro か Phantom 4 ADVANCED か MAVIC PRO か SPARKか !?

とうとう飛び立つ日が近づいて来ました。 暖かく(暑く?)なってきたので購入のタイミングです。幸

記事を読む

no image

ZF >> 初期設定ファイルはZend_Config

Zend Framework で初期設定ファイルを使うには Zend_Config コンポーネントを

記事を読む

Brushless Gimbal Controller Box を作ってみた – 検討編 –

TRUSCO プロテクターツールケース XLのスポンジを切り抜いて入れようとしたらボックス部分が微妙

記事を読む

【雑談】Mavicキラー誕生 !? WALKERA VITUS とか CFast to eSATA breakout Data Cable とか

https://www.youtube.com/watch?v=wyYOAW3k2Ao    

記事を読む

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

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 ↑