見出し画像

Laravelでプログラムの準備

スタッフ向けにLaravelでの開発環境の構築手順&メモ書き

https://localhost

初期ページは下記場所にあるファイルが表示されています

resources/views/welccom.blade.php

このファイルのソースをいじってページが変更されるか確認してください。LaravelのViewは xxxxx.blade.php というファイル名になります。

Viewファイルを作る

①新規作成
resources/views/
上記フォルダを選択して右クリック=>新しいファイル

スクリーンショット 2020-03-18 2.51.47

②コピペ
resources/views/
フォルダ内にあるファイルをコピペする
生成されたファイルの名前を変更(右クリックから名前の変更)
(例)user_index.blade.php

マイグレーションファイルを作る準備

Laravelはマイグレーション(migration)という機能を使ってControllerやModelを作る

マイグレーションを詳しく知りたい人は下記URLでチェック!
https://readouble.com/laravel/5.5/ja/migrations.html

・仮想環境のIDを調べる

docker ps

画像2

上記のリストが表示されるのでxxxxxxx_appのようなPHPが動いている環境のCONTAINER IDをチェックする
(画像の場合は上から2番目 12bfd15165c6)

・仮想環境に入る

docker exec -it 12bfd15165c6 sh

(12bfd15165c6の部分は自分の開発環境で適宜変更)

ターミナルが画像のようにカーソルが/app #になって、dockerの中に入っていることを確認

スクリーンショット 2020-03-18 3.10.00


Modelを作る

php artisan make:model Models/MUsers --migration

MUserの部分がModel名になるので適宜変更
Modelとマイグレーションファイルが生成されました。

Modelファイルの場所

app/Models/MUsers.php

マイグレーションファイルの場所

database/migrations/2020_03_18_00000_create_m_users_table.php

テーブルを作る

生成されたマイグレーションファイルに作成したいカラムを追記

<?php

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class CreateMUsersTable extends Migration
{
   /**
    * Run the migrations.
    *
    * @return void
    */
   public function up()
   {
       Schema::create('m_units', function (Blueprint $table) {
           $table->bigIncrements('id');
           /** ここに追記 **/
           $table->timestamps();
       });
   }

   /**
    * Reverse the migrations.
    *
    * @return void
    */
   public function down()
   {
       Schema::dropIfExists('m_users');
   }
}

ここに追記という場所に以下のようにカラムを追加

$table->string('name');
$table->integer('age');

string 文字列
integer 整数
型はたくさんあるので、データベースの構造に合わせて適宜調べるべし!

Controllerを作る

php artisan make:controller UserController

Controllerの場所

app/Http/Controllers/UserController.php

関数を作る

public function testUser(Request $data){

        //ここにプログラムを記述

}

Viewで表示させる場合は以下のように表示させるviewファイル名を記載

return view('user_index');

View側に変数を送る場合は、以下のようにcompact('data','data2')として変数を追記、配列もOK
関数内で変数が設定されてないとエラーになるよ
(例)$data = 1; 

return view('user_index',compact('data','data2'));

ルーティングを作る

routes/web.php
Route::GET('/user_index','UserController@testUser', function(Request $request){
});

GETかPOSTかは状況で変更
変数のリクエストがなければfunction以下は不要


ブラウザで確認する

https://localhost/user_index

この例では、上記のURLで表示されるはず
もちろんViewの中身が何もなければ何も表示されないけど・・・


データベースの操作は次回!!

この記事が気に入ったらサポートをしてみませんか?