ソフトウェア/laravel5

(1003d) 更新

公開メモ

Laravel5

php フレームワークの中から、laravel5 を選んで使ってみる。

パフォーマンス的には今一なので大規模サイトは作れないはずなのだけれど、 それでも人気があるってのは使いやすいってこと・・・なんだよね、きっと。 ということで。

ウェブサイトはこちら: http://laravel.jp/

環境を確認

使っているサーバーは Debian7

Laravel5 の要求仕様:

  • PHP バージョン5.4以上
  • OpenSSL PHP拡張
  • Mbstring PHP拡張
  • Tokenizer PHP拡張
  • Mcrypt PHP拡張 (php5-mcrypt)
  • JSON PHP拡張 (php5-json)
LANG:console
$ uname --all
 Linux dora 3.2.0-4-amd64 #1 SMP Debian 3.2.65-1+deb7u2 x86_64 GNU/Linux
$ php --version
 PHP 5.4.39-0+deb7u2 (cli) (built: Mar 25 2015 08:33:29)
 Copyright (c) 1997-2014 The PHP Group
 Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
$ sudo aptitude install php5-mcrypt php5-json
 インストール・削除・更新されるパッケージがありません。
 更新: 0 個、新規インストール: 0 個、削除: 0 個、保留: 0 個。
 0  バイトのアーカイブを取得する必要があります。
 展開後に 0  バイトのディスク領域が新たに消費されます。

Composer の導入

https://getcomposer.org/download/ より、

LANG:console
$ curl --version
 curl 7.26.0 (x86_64-pc-linux-gnu) libcurl/7.26.0 OpenSSL/1.0.1e zlib/1.2.7 libidn/1.25 libssh2/1.4.2 librtmp/2.3
 Protocols: dict file ftp ftps gopher http https imap imaps ldap pop3 pop3s rtmp rtsp scp sftp smtp smtps telnet tftp
 Features: Debug GSS-Negotiate IDN IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP
$ curl -sS https://getcomposer.org/installer | php
 #!/usr/bin/env php
 All settings correct for using Composer
 Downloading...

 Composer successfully installed to: /home/takeuchi/composer.phar
 Use it: php composer.phar
$ ls -l composer.phar
 合計 1080
 -rwxr-xr-x 1 takeuchi takeuchi 1103856  5月 18 20:46 composer.phar

laravel5 でアプリケーションを作る

http://readouble.com/laravel/5/0/0/ja/installation.html より

LANG:console
$ ./composer.phar create-project laravel/laravel --prefer-dist myapp
 Installing laravel/laravel (v5.0.22)
   - Installing laravel/laravel (v5.0.22)
  ...

$ cd myapp/
$ git init
  Initialized empty Git repository in ./myapp/.git/
$ git add .
$ git commit -m "initial commit"
 [master (root-commit) cf4860b] initial commit
  153 files changed, 20148 insertions(+)
  ...

最低限の設定をする

とりあえず試してみるだけなので、 データベースは sqlite を使ってしまいます。

LANG:console
$ jed config/app.php
        'url' => 'http://localhost:3000',
        'timezone' => 'Asia/Tokyo',
        'locale' => 'ja',
$ jed config/database.php
        'default' => 'sqlite',
$ mv ../composer.phar .
$ jed .gitignore
 storage/database.sqlite
 composer.phar
 *~
$ touch README.md
$ git add .
$ git commit -m "basic configuration"

これでOK。

LANG:console
$ php artisan migrate

   [InvalidArgumentException]
   Database does not exist.

$ touch storage/database.sqlite
$ php artisan migrate
 Migration table created successfully.
 Migrated: 2014_10_12_000000_create_users_table
 Migrated: 2014_10_12_100000_create_password_resets_table
$ php artisan serve --port=3000 &
 Laravel development server started on http://localhost:3000/
$ curl http://localhost:3000/
 <html>
         <head>
                 <title>Laravel</title>
 ...

トップページが表示された。

ログイン、ログアウトを確認

Laravel5 で新規アプリケーションを作成すると、 インストール直後から最低限のアカウント管理システムと簡易ブログシステムが実装されています。

ですので、

http://localhost:3000/home へアクセスすると

http://localhost:3000/auth/login へ飛ばされて、右上の Register から

http://localhost:3000/auth/register にて sign up すると

http://localhost:3000/home にて You are logged in! が表示され、右上から log out すると

http://localhost:3000/ へ出られたり。

ユーザー管理や簡易ブログの実装を参考にしながら、自身のコードを追加していけば、 Rails など他のフレームワークをさわったことがあればさくさく作って行けそうです。

これらのシステムが必要なければ php artisan fresh で消去できます。

コメント・質問





Counter: 1364 (from 2010/06/03), today: 1, yesterday: 0