前回に引き続き、スマートな外国語単語帳”LangExaminer”を作りたいと思います。
単語一覧の作成
今回は単語一覧(words)の画面を作ります。
テーブル、モデルの作成
テーブルのプロパティはこんな感じでしょうか。
table “words”
名前 | データ型 | 説明 |
---|---|---|
id | int | 主キー。オートインクリメント。 |
japanese | varchar | 日本語。 |
translation | varchar | 対訳。 |
language_id | int | 外部キー。それが何語の言葉かを識別する。lannguageテーブルとリレーション。 |
additional_info | text | 中国語ならピンインとか。スペイン語なら名詞の性別とか。 |
Laravelのartisanコマンドで生成する
で、これをLaravelの機能で作ります。この記事がわかりやすいじゃんね。

LaravelのModelを初心者向けに解説!作成方法や使い…|Udemy メディア
LaravelのModelを、実際の例を交えて丁寧に解説しました!Laravelを使いこなして、Webアプリケーションの開発を円滑にしましょう!また、記事下部にはLaravelを2日で学ぶことのできる動画のリンクがあります。
- artisanコマンドでモデルを作ります。
- artizanコマンドでマイグレーションを作ります。プロパティとか書きます。
- マイグレーションを実行します。テーブルが生成されます。
みたいな感じ?まぁやってみりゃいいか。
#bash cd /path/to/laravel php artisan make:model Models/Word
で、こんなファイルができます。
#Models/Word.php <?php namespace App\Models; use Illuminate\Database\Eloquent\Model; class Word extends Model { // }
で、続きましてマイグレーションファイルですが、
#bash php artisan make:migration create_words
としてやるとマイグレーションファイルがdatabase/migration/の中に出来ます。このプロパティをいじって、お好みのテーブルにすればよいわけです。
<?php use Illuminate\Database\Migrations\Migration; use Illuminate\Database\Schema\Blueprint; use Illuminate\Support\Facades\Schema; class CreateWords extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::create('words', function (Blueprint $table) { $table->bigIncrements('id'); $table->timestamps(); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::dropIfExists('words'); } }
【以下、更新中】