シムノート

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

ユーザ用ツール

サイト用ツール


サイドバー

メニュー



このエントリーをはてなブックマークに追加

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

Doctrine入門 : (1) セットアップ

はじめに

このチュートリアルでは「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」を事前に読んでおくことをお薦めします。

なお、このチュートリアルのソースコードは以下から入手できます。

https://github.com/tsubo/bug_tracker

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

  • 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



221 +14 = ?
blog/2015-12-27/doctrine入門_setup.txt · 最終更新: 2016/01/20 06:48 by tsubo