Laravel

Livewire 親子のコンポーネントについて、親のプロパティを更新するには?oyako2

完成は↓こちらです。 Laravel と Livewire をインストールして、ライブワイヤーの親子のコンポーネントを作成してみます。 プロジェクト名(oyako2)を決めて以下のコマンドを実行します。 インストール時にプロジェクト名のディレクトリが作成されます。 インストールの最後に sudo でパスワードの入力を求められます。 ↓下のメッセージが表示されてインストールは終わります。 sail のエイリアスを定義します。 Laravel のインストールはここまで。 「sail up」でコンテナを起動します。 ララベルのトップディレクトリで、Livewireパッケージをインストールします。 Livewire のクラスとビューを作成するため、ディレクトリを作成します。 ライブワイヤーの親コンポーネントを作成します。app/Http/Livewire/ParentComponent.php イベントをキャッチするには「protected $listeners」に定義します。 ライブワイヤーの子コンポーネントを作成します。app/Http/Livewire/ChildComponent.php 親にイベントを送るには「emit()->up()」を使います。 ライブワイヤーをテストするビューを作成します。resources/views/livewire.blade.php routes/web.php にルートを定義します。 これでブラウザでアクセスできるようになりました。 ブラウザでアクセスしてみましょう。 キーボードから子コンポーネントのテキストボックスに何か入力すると、隣と下の文字(「親から値を設定1」)が変わります。子コンポーネントからイベントを発行して、親コンポーネントのプロパティを変更することができました。 今回、子コンポーネントの dehydrateフック でイベントを発行しました。当初は updatedフック でイベントを発行していました。テキストボックスに入力した場合には、updatedフック が呼び出されますが、クリアボタンを押してプロパティを書き換えた場合には、updatedフック は呼び出されません。dehydrateフック でイベントを発行しない場合は、updateフック と clickメソッド でイベント発行しなくてはなりません。

Livewire 親子のコンポーネントについて、親のプロパティを更新するには?oyako2 Read More »

Laravel マイグレーションを実行するには?

マイグレーションを実行するには↓以下のコマンドを実行します。データベースにテーブルが存在しない場合には、差分のみ作成されます。 特定のテーブルのみ更新するには↓以下のようにします。 テーブルを作成するのはこちら テーブルを作成&モデルの作成はこちら テーブルを削除するにはこちら 全テーブルを削除してテーブルを用意するのはこちら マイグレーションで定義できるカラムの型 マイグレーションで定義できるカラムの型についてまとめました。 プライマリーキーを設定する。 プライマリーキーを設定する。 integer型 で定義する。 bigInteger型 で定義する。 float型 で定義する。 double型 で定義する。 char型 で定義する。 string型 で定義する。 text型 で定義する。 longtext型 で定義する。 boolean型 で定義する。 date型 で定義する。 datetime型 で定義する。 timestamps を定義する。 created_at、updated_dt のカラムが追加されます。 softDeletes を定義する。 deleted_at のカラムが追加されます。 ポストグレスでは、カラム名は↓のように対応していました。 ↑で使ったマイグレーションのファイルです。 NULL を許容するには カラム に nullable を追加します。 ↓のようになります。

Laravel マイグレーションを実行するには? Read More »

Livewire 親子のコンポーネントについて oyako1

完成は↓こちらです。 Laravel と Livewire をインストールして、ライブワイヤーの親子のコンポーネントを作成してみます。 プロジェクト名(oyako1)を決めて以下のコマンドを実行します。 インストール時にプロジェクト名のディレクトリが作成されます。 インストールの最後に sudo でパスワードの入力を求められます。 ↓下のメッセージが表示されてインストールは終わります。 sail のエイリアスを定義します。 Laravel のインストールはここまで。 「sail up」でコンテナを起動します。 ララベルのトップディレクトリで、Livewireパッケージをインストールします。 Livewire のクラスとビューを作成するため、ディレクトリを作成します。 ライブワイヤーの親コンポーネントを作成します。app/Http/Livewire/ParentComponent.php ライブワイヤーの子コンポーネントを作成します。app/Http/Livewire/ChildComponent.php ライブワイヤーをテストするビューを作成します。resources/views/livewire.blade.php routes/web.php にルートを定義します。 これでブラウザから /livewire でアクセスできるようになりました。 ブラウザでアクセスしてみましょう。 キーボードからテキストボックスに何か入力すると、隣の文字(「親から値を設定」)が変わります。子コンポーネントが正しく動作しています。 次に、親コンポーネントで子コンポーネントの値を受け取るにはどうしたらいいのでしょうか?続く・・・

Livewire 親子のコンポーネントについて oyako1 Read More »

Laravel ライブワイヤーのメモ

①ライブワイヤーコンポーネントでは IDプロパティ は定義できない。 ②ライブワイヤーコンポーネントで renderメソッド を定義しない場合は、以下のファイルが使われる。 ③ライブワイヤーコンポーネントには、ブレードコンポーネントにはあった {{attributes}} が無い。 ④ライブワイヤーのアクションを実行する前に、JavaScript で確認を入れる書き方。 ⑤ライブワイヤーコンポーネントを動的に作成する場合は、wire:key を設定する。 ⑥ライブワイヤーコンポーネントの表示の仕方。 ↓はPHP7 以降の書き方なので、こちらの方が新しい。 ↓は過去の書き方。 ⑦ライブワイヤーコンポーネントのプロパティを設定する。 ⑧JavaScript でライブワイヤーコンポーネントのプロパティを設定する。 ⑨JavaScript でフォームの値を変更した場合にライブワイヤーコンポーネントのプロパティを更新するには、フォームで inputイベント を発生させる。 ⑩ライブワイヤーコンポーネントは formタグ で囲む必要はない。 ⑪JavaScript からはコンポーネントを find することはできるが、Componentクラス からは find することはできない。 ⑫JavaScript からは任意のコンポーネントのメソッドを呼び出すことはできるが、Componentクラス からは find できないので、任意のコンポーネントのメソッドを呼び出すことはできない。全体に向けて、イベントを送ること(emit)はできる。

Laravel ライブワイヤーのメモ Read More »

Laravel ログを出力するには?

ログの基本 Log クラスをインポートする。\Logでもアクセスできます。 Log クラスをインポートしないで、\Logだけでも使えます。 ログに変数の内容を出力するには、第2パラメータに設定する。 ログの出力先は↓こちら。 ログレベルは .env で設定する。例えば info と設定すると、debugレベル のログは出力されなくなる。 ログの種類 debugログ(開発中のログはこれで良いと思う) infoログ noticeログ warningログ errorログ criticalログ alertログ emergencyログ

Laravel ログを出力するには? Read More »

Laravel bladeの使い方を忘れてしまったので思い出すには?

①変数の表示 イメージとしては↓。HTMLエスケープ処理されている。 ②変数の表示2 イメージとしては↓。HTMLエスケープ処理がされていない。 ③PHPスクリプト この間に PHPスクリプト を記述することができる。例えば、ブレード内での変数の定義に使えます。 ④コメント ⑤CSRFフィールド formタグの次に書く。 ⑥@extends、@section、@yield の関係 フレームのテンプレートでは、各画面の @section で定義される title、content を、@yield を使って呼び出します。 各画面のテンプレートでは、@section の title、content に画面毎の内容を記述し、@extends を使ってフレームのテンプレートを呼び出します。 ⑦スタック 各画面のテンプレートで @push でスタックに処理を追加する。 フレームのテンプレートでスタックから処理を取り出します。

Laravel bladeの使い方を忘れてしまったので思い出すには? Read More »

Scroll to Top