MinEMemO
🏷️「Laravel 」Tag 記事一覧(2 posts)
【Laravel】Bladeテンプレートの __(”) って何?

2021-02-14

はじめに Laravel 絶賛勉強中です(スローペース🐢) ユーザ登録のテンプレート resources\views\auth\register.blade.php を見てたら、 {{ __(‘Register’) }} なるものを発見👀 なんぞや?となって調べたので、ブログに残しておきます。 __(”)とは 「言語ファイルから翻訳文字列の取得を取得するヘルパ関数」とのこと。 言語ファイルとは resources\lang 配下のファイルのことです。 デフォで en が入っていますが、ja を追加することもできます。 その言語ファイルから、値を取得するための関数ということのようです。 参照する言語ファイルは config\app.php の locale の設定で決まります ■config\app.php の locale の設定について php 'locale' = & gt ; 'en' ↓ 'locale' = & gt ; 'ja' , をすると ja 配下の言語ファイルを参照します。 ■jaファイルは以下のコマンドで一括で追加できます php -r "copy('https://readouble.com/laravel/6.x/ja/install-ja-lang-files.php', 'install-ja-lang.php');" php -f install-ja-lang.php php -r "unlink('install-ja-lang.php');" 参考: Laravel 6.x validation.php言語ファイル 修正例 今回はユーザ登録画面のテンプレート resources\views\auth\register.blade.php のボタンの文字を「Register」から「ユーザ登録」に変更したいと思います。 これを↓ こうしたい↓ 修正手順 確認した所 {{ __(‘Register’) }} となっている箇所が3カ所あり、表示内容的に共通で問題ないため、すべて修正を行います。 resources\lang\ja に form.php を追加※任意のファイル名でOK php <?php return [ /* |-------------------------------------------------------------------------- | 入力フォームに表示する日本語行 |-------------------------------------------------------------------------- | */ 'register' => [ 'name' => 'ユーザ登録' , ] ] ; ​ resources\views\auth\register.blade.php で2カ所を以下のように修正。 ※formは 1 でつけたファイル名 ※registerは 1 でつけた1個目のキー ※nameは 1 でつけた2個目のキー ※ . でつないで参照できます php { { __ ( ‘Register’ ) } } ↓ { { __ ( ‘form . register . name’ ) } } 共通テンプレート resources\views\layouts\app.blade.php 1カ所を以下のように修正 php { { __ ( ‘Register’ ) } } ↓ { { __ ( ‘form . register . name’ ) } } 以上で言語ファイルから参照した値での表示に変更することにできました。 直接テンプレート上で文字で記載してもよいですが、設定ファイルとしてまとめれたり、言語ごとに共通で修正できるので、その点がメリットですね。 ■エラー「htmlspecialchars() expects parameter 1 to be string, array given helpers.php」について 例えば{{ __(‘Register’) }}と記載があり、resources\lang\ja 配下に Register.php がある場合にエラーが出ます。 Laravelの翻訳ページを見た感じ、翻訳文字列が存在しない場合はキーをそのまま返しますとのことなので、エラーにならずに Register が返ってくると思いきや違うようなので注意です。 修正箇所をまとめて、改修、保守しやすくしておくのは大事ですね。 あと @lang はちゃんと使え。と書いてあるので基本的に __"を使うで良いとは思いました。
【Laravel】データベースに繋がらない時の確認方法

2020-06-28

はじめに JavaScriptはVue.js、jQueryでの業務経験があるのですが、PHPはフレームワークを使ったことがなかったので、最近Laravelの勉強を始めています。 一旦たにぐちさんの動画で環境構築、軽くMVCを動かしてみるというところまでは詰まらずいけたのですが、その後自分で新たなに勉強していくなか、データベースに繋がらない時の確認方法が必要になったので、記事しておきます。 今回は以前使用した sqliteと今回使ったMySQLで確認 をしたときの方法です Laravel入門 データベースに繋がらない時の確認方法 まずLaravelで接続状態確認 以下の Laravelのコマンドで今の状況を確認できます。 php artisan migrate:status 何かしらのエラーがてて、繋がってなかったら以下「2」以降のいづれかを確認します。 個人的に順番はつけていますが、目星がついてる場合は怪しい個所から調べても おけまる です php.iniを確認する phpの設定ファイルを確認し使いたいデータベースがコメントアウトされていないか確認する。 php.iniにはたくさん記述があるので、Ctrl+Fで検索すると見つけやすいです。 php.ini extension=pdo_sqlite ※sqliteならこれを確認力 php.ini extension=mysqli ※MySQLならこれを確認 .env のデータベース設定がきちんとなっているか .envはLaravelの設定ファイルです。 TOPにあるので中身を確認します。 .envにもたくさん記述があるので、Ctrl+Fで検索すると見つけやすいです。 .env DB_CONNECTION=sqlite ※sqliteならこれだけ記載し他のはコメントアウトで非活性にしてOK .env DB_CONNECTION=mysqlDB_HOST=ホスト名DB_PORT=ポートDB_DATABASE=DB名DB_USERNAME=ユーザネームDB_PASSWORD=パスワード ※MySQLは適宜今の状況にあったものを記載します database.phpの対象のDB設定がきちんとなっているか Laravelの config/database.php は .env ファイルの設定を参照し、なければ第二引数の値が設定として参照されるファイルです。 なので、MySQLの場合は .env ファイルの設定がされているものは特に変更しなくても基本は動くと思います。 ただし、sqliteの場合は初期設定のDBのファイル名が「database.sqlite」なのでファイル名を変更した場合は適宜記載します。 php 'database' => env ( 'DB_DATABASE' , database_path ( 'DBのファイル名のみ記載' ) ) ※sqliteの場合 使ってるサーバーは起動してるか これ本当に凡ミスでした😅 当時XAMPPだったのですが、XAMPPを起動していなくてエラーになるということがありました笑 サーバーはちゃんと起動しましょう😅 設定ファイル変更後にキャッシュはのこってないか いろいろと設定ファイルを変更した場合に、前回の設定値がキャッシュで残ることがあるそうです。 見返しても間違いがない場合は以下のコマンドで設定ファイルのキャッシュをクリアしてみてください。 php artisan config:cache 以上です! いろいろと大変なこともありますが..お互い頑張りましょう!
profile_icon
taka
プログラマー
いつでも転職希望の業務経験6年目(2022時点)のエンジニアです。 仕事の合間にすこしずつ転職活動はしていますが、条件が合う場合ぜひTwitterなどでご連絡頂けると嬉しいです。 希望条件は現在の年収を下回らない(手取り31万以上)、基本残業なし、ある程度保守運用が管理されていて、その経験ができる職場で働きたいです。 (管理がされてない案件が多く、心的安全が少ない仕事が多いので、ある程度安心して働きたいと感じています。) 経験言語はHTML、CSS、javascript、PHP、MySQL、Docker、Vuejs、Laravel このブログは完全に自作で静的ジェネレータで作りました。 この範囲で言えば React.js Gatsby.js GraphQLも経験があります。