2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Laravelはじめました

Posted at

#Larave(ディレクトリ構成)

本日からLaravelを触り出したので自分の勉強記録として投稿していこうと思う。

簡単にディレクトリ構成から勉強。
(フレームワークを余り触ったことがないので混乱)

ディレクトリ構成

1 2
app アプリのメインとなるところ
bootstrap 初期処理やキャッシュ
config アプリの設定
database データベース(マイグレーション)
public 画像,JS,CSS
resources blade(HTML的な)
routes アプリのURL設定など
storage セッションやログ
tests テスト用
vendor Composerの依存内容

設定ファイル(隠しフォルダにあり)

  • codeフォルダの歯車マーク押して、show hidden filesをクリック
  • .envフォルダを開く
php
DB_CONNECTION=mysql
DB_HOST=localhost         // 編集
DB_PORT=3306
DB_DATABASE=laravel_todo  // 編集
DB_USERNAME=root
DB_PASSWORD=root          // 編集 環境によって異なる 現在はAWS


dbマイグレーションとは

  • SQLを直接使わなくても、データベースを管理できるLaravelの仕組み。

  • テーブル作成の流れ
    1.マイグレーションファイルを生成
    2.ファイルにテーブル定義を書く
    3.マイグレーションを実行し、DBに反映

※まず、1テーブル1ファイルと覚えよう

マイグレーションの生成

  • ファイルの場所とファイル名のルール
    database/migrations

2020_12_20_00000_todos_table.php
  生成時間     アクション名 テーブル名

  • ファイル生成コマンド
tarminal
php artisan make:migration todos_table

カラム名:add_カラム名_to_users_table

tarminal
php artisan migrate

全ファイルが実行される

マイグレーションの中身

  • upとdawnメソッドがある
    upが実行(作成)で、downが元に戻す(削除)

  • Schemaファザードを使っている
    例)Schema::create テーブルを作成

  • カラムの作成はBlueprintオブジェクトのtableメソッドを使う
    例)$table->string('name')名前カラムを作成!

実際にファイルを見てみる

php database/migrations/2020_12~

 /**
  ここでマイグレーションファイルを読み込む
 */
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class CreateTodosTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
       /*
        Schemaファザードを使っている 
        if tableがなかったら作る
        */
        if(!Schema::hasTables('todos')){
        Schema::create('todos', function (Blueprint $table) {
            $table->id();
            $table->string('todo');
            $table->date('deadline');
            $table->text('comment')->nullable();
            /* 100文字制限の時は('comment',100) */
            $table->timestamps();
        });
      }
    }
  }

マイグレーションを実行する

tarminal
php artisan migrate

結果

tarminal
Migration table created successfully.
Migrating: 2014_10_12_000000_todos_table
Migrated:  2014_10_12_000000_todos_table (31.23ms)

error

tarminal
 $ composer dump-autoload

からの再起動

とりあえずここまで。
次回に進む。

 

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?