laravel:db_access
差分
このページの2つのバージョン間の差分を表示します。
| 次のリビジョン | 前のリビジョン | ||
| laravel:db_access [2023/04/10 19:01] – 作成 mikoto | laravel:db_access [2023/04/13 11:27] (現在) – mikoto | ||
|---|---|---|---|
| 行 1: | 行 1: | ||
| ====== データベースへのアクセス ====== | ====== データベースへのアクセス ====== | ||
| + | [[: | ||
| + | データベースのアクセス情報を'' | ||
| + | ファイルはプロジェクトのルートディレクトリにある。 | ||
| + | < | ||
| + | DB_CONNECTION=mysql | ||
| + | DB_HOST=127.0.0.1 | ||
| + | DB_PORT=3306 | ||
| + | DB_DATABASE=db_name | ||
| + | DB_USERNAME=db_username | ||
| + | DB_PASSWORD=db_password | ||
| + | </ | ||
| + | |||
| + | '' | ||
| + | user_infoテーブルからnameのみを抽出する場合を想定する。 | ||
| + | SELECT文を実行した結果をnameに格納し、lsqlというビューにresultとして渡す。 | ||
| + | <code php> | ||
| + | Route:: | ||
| + | $name = DB:: | ||
| + | return view(' | ||
| + | }); | ||
| + | </ | ||
| + | 次に'' | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | <ul> | ||
| + | @foreach ($results as $a) | ||
| + | < | ||
| + | @endforeach | ||
| + | </ul> | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | もし、'' | ||
| + | Oracle Linux の場合は以下のようにインストールする。 | ||
| + | < | ||
| + | dnf install php-mysqlnd | ||
| + | </ | ||
| + | |||
| + | ===== モデルを作成する方法 ===== | ||
| + | 以下のコマンドでモデルを作成する. | ||
| + | < | ||
| + | php artisan make:model Item | ||
| + | </ | ||
| + | これで'' | ||
| + | このファイルに使用するテーブル名を記載する。 | ||
| + | < | ||
| + | <?php | ||
| + | |||
| + | namespace App\Models; | ||
| + | |||
| + | use Illuminate\Database\Eloquent\Factories\HasFactory; | ||
| + | use Illuminate\Database\Eloquent\Model; | ||
| + | |||
| + | class Item extends Model | ||
| + | { | ||
| + | protected $table = ' | ||
| + | } | ||
| + | </ | ||
| + | 次に、ルートを作成する。'' | ||
| + | < | ||
| + | Route:: | ||
| + | </ | ||
| + | を追加する。 | ||
| + | |||
| + | '' | ||
| + | <code php> | ||
| + | <?php | ||
| + | |||
| + | namespace App\Http\Controllers; | ||
| + | |||
| + | use Illuminate\Http\Request; | ||
| + | use App\Models\Item; | ||
| + | |||
| + | class LSQLController extends Controller | ||
| + | { | ||
| + | public function index() { | ||
| + | $items = Item:: | ||
| + | return view(' | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | ここでは10件のみ取得するようにし、lsql.blade.php側でresultsで取得するようにしている。 | ||
| + | |||
| + | ビュー側では、これを取得して表示するよう記載する | ||
| + | <code html> | ||
| + | < | ||
| + | < | ||
| + | <ul> | ||
| + | @foreach ($results as $a) | ||
| + | < | ||
| + | @endforeach | ||
| + | </ul> | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
laravel/db_access.1681120894.txt.gz · 最終更新: 2023/04/10 19:01 by mikoto