<?php
namespace App\Traits;
use App\Models\Student;
trait StudentTrait {
public function listAll() {
// 获取学生
$students = Student::all();
return $students;
}
}
您可以在模型或控制器中使用它,使用use关键字。
<?php
namespace App\Http\Controllers\API;
use Illuminate\Http\Request;
use App\Traits\StudentTrait;
class AuthController extends Controller
{
use StudentTrait;
// 做你的事情
public function getStudents(){
$strudents = $this->listAll();
return new JsonResponse(['students' => $students, 'msg' => 'success']);
}
}
您可以创建相同的类名,既可以用于API,也可以用于视图。通过在不同的命名空间中创建控制器,例如:
对于共享的问题,请在app中创建Traits文件夹,然后创建PHP trait类。
<?php namespace App\Traits; use App\Models\Student; trait StudentTrait { public function listAll() { // 获取学生 $students = Student::all(); return $students; } }您可以在模型或控制器中使用它,使用use关键字。
<?php namespace App\Http\Controllers\API; use Illuminate\Http\Request; use App\Traits\StudentTrait; class AuthController extends Controller { use StudentTrait; // 做你的事情 public function getStudents(){ $strudents = $this->listAll(); return new JsonResponse(['students' => $students, 'msg' => 'success']); } }对于独立的问题和结构化开发,您可以创建服务或存储库模式。 有关更多信息,请点击。