デフォルトのUXTermはこんな感じ。
そこでインストール。
$ apt-get install guake
こんな感じで上に張り付く。F12で出したりしまえたりは便利かも。
$ apt-get install guake
$ php artisan make:migration create_tasks_table --create=tasks Created Migration: 2016_03_10_084136_create_tasks_tableartisanの使用方法についてはこんな感じ。
$ php artisan make:migration <Migration File Name> --create=<Table Name>これを実行するとProject/database/migrations配下に2016_03_10_084136_create_tasks_table.phpというようなファイルが作成される。中身はこんな感じ。
increments('id');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('tasks');
}
}
レコードのIDとタイムスタンプのカラムがデフォルトで設定されているので、これにタスク名を格納するためのカラムを追加で設定する。こんな感じ。ハイライト部分が追記した部分。public function up()
{
Schema::create('tasks', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->timestamps();
});
}
このMigrationを実行する前に。やっておく事が2つ。DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=Laravel_tutorial DB_USERNAME=root DB_PASSWORD=password
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'Laravel_tutorial'),
'username' => env('DB_USERNAME', 'root'),
'password' => env('DB_PASSWORD', 'password'),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
'engine' => null,
],
これが終わったらようやくMigrateできる。php artisan migrate Migration table created successfully. Migrated: 2014_10_12_000000_create_users_table Migrated: 2014_10_12_100000_create_password_resets_table Migrated: 2016_03_10_084136_create_tasks_tableMySQLでデータベースLaravel_tutorialにtasksテーブルが出来ているかみてみる。
mysql> show tables; +----------------------------+ | Tables_in_Laravel_tutorial | +----------------------------+ | migrations | | password_resets | | tasks | | users | +----------------------------+ 4 rows in set (0.00 sec) mysql> desc tasks; +------------+------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +------------+------------------+------+-----+---------+----------------+ | id | int(10) unsigned | NO | PRI | NULL | auto_increment | | name | varchar(255) | NO | | NULL | | | created_at | timestamp | YES | | NULL | | | updated_at | timestamp | YES | | NULL | | +------------+------------------+------+-----+---------+----------------+ 4 rows in set (0.15 sec)出来ているのを確認したらテーブルtasksへアクセスするためのモデルTaskを作成する。
$ php artisan make:model Task Model created successfully.テーブル名は複数形、モデルは単数形という暗黙のルールがあるので明示的にtasksテーブルを指定せずともTaskというモデルはtasksテーブルを参照するモデルがapp配下に作成される。
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Task extends Model
{
//
}
疲れてきた。
$ wget https://getcomposer.org/download/1.0.0-beta1/composer.phar $ mv composer.phar /usr/local/bin/composer最後、コマンドとして実行するためにパーミッションを付与する。
$ chmod +x /usr/local/bin/composer
$ composer global require "laravel/installer=~1.1" Changed current directory to /root/.config/composer ./composer.json has been created Loading composer repositories with package information Updating dependencies (including require-dev) - Installing symfony/process (v3.0.3) Downloading: 100% - Installing symfony/polyfill-mbstring (v1.1.1) Downloading: 100% - Installing symfony/console (v3.0.3) Downloading: 100% - Installing guzzlehttp/promises (1.1.0) Downloading: 100% - Installing psr/http-message (1.0) Downloading: 100% - Installing guzzlehttp/psr7 (1.2.3) Downloading: 100% - Installing guzzlehttp/guzzle (6.1.1) Downloading: 100% - Installing laravel/installer (v1.3.1) Downloading: 100% symfony/console suggests installing symfony/event-dispatcher () symfony/console suggests installing psr/log (For using the console logger) Writing lock file Generating autoload files最後に~/.composer/vendor/binにPATHを通しておく。
$ cd /usr/local/apache2 $ laravel new test1 $ ln -s ../test1/public test1実行する前にstorageディレクトリにパーミッションを付与する。
chmod -R o+w storage