【Laravelのシンプルな実装例】スマートな外国語単語帳を作る②モデル作成

【Laravelのシンプルな実装例】スマートな外国語単語帳を作る②モデル作成随筆

前回に引き続き、スマートな外国語単語帳”LangExaminer”を作りたいと思います。

スポンサーリンク

単語一覧の作成

今回は単語一覧(words)の画面を作ります。

テーブル、モデルの作成

テーブルのプロパティはこんな感じでしょうか。

table “words”

名前データ型説明
idint主キー。オートインクリメント。
japanesevarchar日本語。
translationvarchar対訳。
language_idint外部キー。それが何語の言葉かを識別する。lannguageテーブルとリレーション。
additional_infotext中国語ならピンインとか。スペイン語なら名詞の性別とか。

Laravelのartisanコマンドで生成する

で、これをLaravelの機能で作ります。この記事がわかりやすいじゃんね。

LaravelのModelを初心者向けに解説!作成方法や使い…|Udemy メディア
LaravelのModelを、実際の例を交えて丁寧に解説しました!Laravelを使いこなして、Webアプリケーションの開発を円滑にしましょう!また、記事下部にはLaravelを2日で学ぶことのできる動画のリンクがあります。
  1. artisanコマンドでモデルを作ります。
  2. artizanコマンドでマイグレーションを作ります。プロパティとか書きます。
  3. マイグレーションを実行します。テーブルが生成されます。

みたいな感じ?まぁやってみりゃいいか。

#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');
    }
}

 

【以下、更新中】

タイトルとURLをコピーしました