Laravelでプログラムの準備
スタッフ向けにLaravelでの開発環境の構築手順&メモ書き
初期ページは下記場所にあるファイルが表示されています
resources/views/welccom.blade.php
このファイルのソースをいじってページが変更されるか確認してください。LaravelのViewは xxxxx.blade.php というファイル名になります。
Viewファイルを作る
①新規作成
resources/views/
上記フォルダを選択して右クリック=>新しいファイル
②コピペ
resources/views/
フォルダ内にあるファイルをコピペする
生成されたファイルの名前を変更(右クリックから名前の変更)
(例)user_index.blade.php
マイグレーションファイルを作る準備
Laravelはマイグレーション(migration)という機能を使ってControllerやModelを作る
マイグレーションを詳しく知りたい人は下記URLでチェック!
https://readouble.com/laravel/5.5/ja/migrations.html
・仮想環境のIDを調べる
docker ps
上記のリストが表示されるのでxxxxxxx_appのようなPHPが動いている環境のCONTAINER IDをチェックする
(画像の場合は上から2番目 12bfd15165c6)
・仮想環境に入る
docker exec -it 12bfd15165c6 sh
(12bfd15165c6の部分は自分の開発環境で適宜変更)
ターミナルが画像のようにカーソルが/app #になって、dockerの中に入っていることを確認
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の中身が何もなければ何も表示されないけど・・・
データベースの操作は次回!!
この記事が気に入ったらサポートをしてみませんか?