LaravelのControllerでは基本の基本では以下のように書くとおもいます。
PHp
1 2<?php 3 4namespace App\Models; 5 6use Illuminate\Database\Eloquent\Model; 7use Illuminate\Support\Facades\DB; 8 9class Frameworks extends Model 10{ 11 protected $table = 'frameworks'; 12 13 protected $guarded = array('id'); 14 15 public $timestamps = false; 16 17 public function getData() 18 { 19 $data = DB::table($this->table)->get(); 20 21 return $data; 22 } 23} 24
例えば、一つのコントローラの別のクラスで別のテーブルを使いたい場合、以下のような指定方法があるようですが、これは正しいのでしょうか?
動作自体はしますが同様の記述方式を用いたサイトが他に見つけられず、何か他の記法があるのではないかお伺いしたいです。
PHP
1<?php 2 3namespace App\Http\Controllers; 4 5use Illuminate\Http\Request; 6use App\User; // Userモデルを呼び出す 7 8class UserController extends Controller 9{ 10 public function index() 11 { 12 $user = User::first(); // Userモデル(usersテーブル)で一番最初にヒットするデータをコレクションで返す 13 14 dd($user->name); // nameの値をデバッグ 15 } 16}
PHP
1<?php 2 3namespace App\Http\Controllers; 4 5use Illuminate\Http\Request; 6use App\User; // Userモデルを呼び出す 7use App\Hoge; // Userモデルを呼び出す 8 9class UserController extends Controller 10{ 11 public function index() 12 { 13 $user = User::first(); // Userモデル(usersテーブル)で一番最初にヒットするデータをコレクションで返す 14 15 dd($user->name); // nameの値をデバッグ 16 } 17 18 public function hoge() 19 { 20 $user = Hoge::first(); // Userモデル(usersテーブル)で一番最初にヒットするデータをコレクションで返す 21 22 dd($user->content); // nameの値をデバッグ 23 } 24 25}
回答4件
あなたの回答
tips
プレビュー