上記のサイトを参考して作成しています。
SQLSTATE[HY000] [2002] Connection refused
の接続がエラーが出たときに確認する場所としては、
envファイルの、DB名、ユーザー名、パスワード確認済みです。データベースは立ち上げています。
マイグレーションは可能でしたが、そのあとの、index.blade.phpにデータベースを反映させる際に躓きました。。
PostController.php
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Models\Post; use Illuminate\Support\Facades\DB; class PostsController extends Controller { public function index(Request $request) { $posts = DB::table('posts')->orderBy('created_at', 'desc')->get(); return view('posts.index', ['posts' => $posts]); } }
でエラーが出ました。
上記の
public function index(Request $request) { $posts = DB::table('posts')->orderBy('created_at', 'desc')->get(); return view('posts.index', ['posts' => $posts]); }
部分を変更したため、エラーが出ているのかと考えています。
今回のこのメソッドでは
Request $request
は必要性はないことは、調べていく中でわかりました。
実施したこと
変更前
$posts = Post::table('posts')->orderBy('created_at', 'desc')->get();
変更後
$posts = DB::table('posts')->orderBy('created_at', 'desc')->get();
Postから、DBに変更しました。
この文章は追記しました。
use Illuminate\Support\Facades\DB;
を用いて、処理を行っていくと思い、安易な考えで変更しました。
解決方法として検索し、
https://yaba-blog.com/laravel-db/
こちらが出てきて参考にしました。
①envファイルのDB_DATABASE、DB_USERNAME、DB_PASSWORDにMySQLのDBと同じものが設定されているか。
②.envファイルを修正した後にキャッシュをクリアしたか
①は確認したのですが、②の方法は調べてみると、推奨されていませんでした。。
よろしくおねがいいたします。
回答2件
あなたの回答
tips
プレビュー