Laravel入門トップページ


目次

  1. Composerのダウンロードとインストール
  2. コメント掲示板を作成してみよう
    1. Laravelプロジェクトの作成と初期設定
    2. コメント掲示板を作ってみよう
    3. SQLiteを使ってみよう
    4. コメント掲示板の機能を拡張しよう
  3. リレーションシップを使いこなそう
  4. ユーザ認証の機能を実現しよう
  5. マルチ認証の機能を実現しよう
  6. MongoDB に接続しよう
  7. キューを利用しよう
  8. コマンド(コンソール)を利用しよう
  9. 本番環境にデプロイしよう

コメント掲示板を作成してみよう

SQLite を使ってみよう

Laravel ではバックエンドのデータベースに MySQL や SQL Server, PostgreSQL, SQLite を利用できる.また Laravel は利用するデータベースを .env という設定ファイルで指定するだけで,どのデータベースに接続しているかを利用者が意識することなく Laravel が面倒を見てくれる.

しかしながら,システムの開発中やテスト中にデータベースの中身を直接確認するようなことも考えられる.ここでは,SQLite の操作方法を簡単に説明する.(SQLite で全文検索システムを開発するのは難しいかもしれない.MySQLなどの高機能なDBMSを使えば日本語全文検索システムを開発できる.)


目次に戻る

myapp のデータベースを覗いてみよう

コメント掲示板を作ってみようで開発したシステムのデータベースを直接覗いてみる.データベースは php artisan migrate を実行した段階で database/database.sqlite ファイルに生成される.また php artisan db:seed でテストデータが投入されているはずである.

SQLite でデータベースを開くためには,database/ ディレクトリに移動して,sqlite3 データベースファイル名 を実行する.終了するには .exit を入力する.

[GakuinHana@rin06 myapp]$ pwd ⏎
/home/students/GakuinHana/Documents/laravel/myapp
[GakuinHana@rin06 myapp]$ cd database/ ⏎
[GakuinHana@rin06 database]$ ls ⏎
database.sqlite  factories  migrations  seeds
[GakuinHana@rin06 database]$ sqlite3 database.sqlite ⏎
SQLite version 3.7.17 2013-05-20 00:56:22
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .exit ⏎
[GakuinHana@rin06 database]$

SQLite の主なコマンドは次のとおりである.

コマンド実行例意味
.help.helpヘルプ画面を表示する
.tables.tablesテーブルの一覧を表示する
.schema.schema全てのテーブルの定義を表示する
.schema テーブル名.schema comments指定したテーブルの定義を表示する
.headers ON/OFF.headers ON列名の表示/非表示を切り替える
.exit.exitSQLite を終了する

実際に,テーブルの一覧とcommentsテーブルの定義を確認して終了させよう.

[GakuinHana@rin06 database]$ ls ⏎
database.sqlite  factories  migrations  seeds
[GakuinHana@rin06 database]$ sqlite3 database.sqlite ⏎
SQLite version 3.7.17 2013-05-20 00:56:22
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .tables ⏎
comments    migrations
sqlite> .schema comments ⏎
CREATE TABLE "comments" (
            "id" integer not null primary key autoincrement,
            "title" varchar not null,
            "body" text not null,
            "created_at" datetime null,
            "updated_at" datetime null
            );
sqlite> .exit ⏎
[GakuinHana@rin06 database]$

目次に戻る

SQL を使ってみよう

SQLの書式は経営学部の講義「データベース」で説明したものがほとんど利用できるはずである.なお,SELECT 等の SQL コマンドは小文字で入力してもかまわない.

[GakuinHana@rin06 database]$ sqlite3 database.sqlite  ⏎
SQLite version 3.7.17 2013-05-20 00:56:22
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .tables ⏎
comments    migrations
sqlite> SELECT * FROM comments; ⏎
1|最初のコメント|最初のコメントです!||
2|2つ目|2つ目のコメントです!||
3|<三個目>のコメント|シーダによってテストデータを設定します.||
sqlite> SELECT id, title FROM comments ORDER BY id DESC; ⏎
3|<三個目>のコメント
2|2つ目
1|最初のコメント
sqlite> SELECT COUNT(*) AS cnt FROM comments; ⏎
3
sqlite> SELECT title, body FROM comments WHERE id = 2; ⏎
2つ目|2つ目のコメントです!
sqlite> SELECT * FROM comments WHERE title LIKE "%目%"; ⏎
2|2つ目|2つ目のコメントです!||
3|<三個目>のコメント|シーダによってテストデータを設定します.||
sqlite> SELECT * FROM comments WHERE title LIKE "%コメント%"; ⏎
1|最初のコメント|最初のコメントです!||
3|<三個目>のコメント|シーダによってテストデータを設定します.||
sqlite> .exit ⏎
[GakuinHana@rin06 database]$

目次に戻る