シムノート

PHPフレームワークSymfonyの学習帳

ユーザ用ツール

サイト用ツール


サイドバー

blog:2015-12-27:doctrine入門_setup

Doctrine入門 : (1) Setup

はじめに

このチュートリアルでは「Getting Started with Doctrine」をトレースしながら、Doctrineを学びます。

「Getting Started with Doctrine」では素のPHPにDoctrineをライブラリとして組み込み、コマンドラインのアプリケーションを作成して解説していますが、このチュートリアルではSymfonyのアプリケーションを作成しながら解説します。

ほぼ、オリジナルの「Getting Started with Doctrine」と同じ内容、同じ順番で進めますが、サンプルをSymfonyのアプリケーションにした為に必要となるコードは追記しています。また、複雑で何を言っているのか分かりづらい内容は思い切って削除しています。オリジナルの「Getting Started with Doctrine」と一致している訳ではありませんので、見比べる際にはご注意ください。

なお、解説はDoctrineを中心に行い、Symfonyについては行いませんので、Symfonyが初めての方は「超入門Symfony3」を事前に読んでおくことをお薦めします。

このチュートリアルで学べること

  • PHPのクラスのDBへのマッピング
  • PHPのクラスからのDBスキーマの生成
  • EntityManagerを使ってのDBへのCRUD(Create, Read, Update, Delette)処理
  • 1対多のリレーション方法
  • 多対多のリレーション方法
  • DQLの使い方
  • KnpPaginatorBundleを使ったページ制御

前提事項

  • Symfony ver 3.0.xを使用
  • PHP5.6以上
  • CSSにBootstrap3を使用
  • DBにSqliteを使用

Doctrineとは

Symfonyではデータベース(以下、DB)とデータをやり取りするのに、Doctrine ORMを使います。ORMとはDBのデータとPHPのクラスをマッピングして変換する技法のことです。

※ 上記画像はSymfony公式サイトより

プライマリキーとしてIDを持ち、Doctrineを通して、DBとマッピングするPHPオブジェクトをエンティティと言います。

インストール

「Getting Started with Doctrine」では、バグトラッキングシステムを作成しながら、話を進めます。 以下の操作で、bug_trackerプロジェクトを作成します。

$ git clone git@github.com:tsubo/sf_tutorial_base.git bug_tracker
$ cd bug_tracker
$ composer install

$ 質問には全て[Enter]で回答

tsubo/sf_tutorial_baseは事前に以下の設定を済ませたSymfony3のプロジェクトです。

  • Locale: ja
  • DB: SQLite
  • Layout Template: Bootstrap3 CDN
  • CRUD Template: Bootstrap3
  • Form: Bootstrap3

動作確認

ビルトインサーバーを起動し動作確認を行います。

$ bin/console server:run

http://localhost:8000/ にアクセスしてホームページが表示されるか確認します。


Comments



206 +1 = ?
blog/2015-12-27/doctrine入門_setup.txt · 最終更新: 2016/01/01 03:28 by tsubo