文件夹“ App”中有一个文件“ MyClasses.php”:
namespace App;
use Illuminate\Database\Eloquent\Model;
class Model1 extends Model {}
class Model2 extends Model {}
如何通过使用将其连接到控制器中?
答案 0 :(得分:2)
我建议您阅读有关PSR-4标准的信息: https://www.php-fig.org/psr/psr-4/
在这种情况下,MyClasses.php不是模型的有效名称,因为a)在其内部定义的所有类都不称为MyClasses
,并且b)该文件中包含许多类定义。
// App/Model1.php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Model1 extends Model {
protected $table = 'some_table';
}
// Controller
use App\Http\Controllers\Controller;
use App\Model1;
class SomeController extends Controller
{
public function index()
{
$record = Model1::where('some_field', 1)->get();
}
}
编辑:进行澄清。
两种模型都应位于自己的文件中,分别位于App文件夹下的Model1.php和Model2.php中。另外,您的模型名称*应该*对应于他们正在访问的表名称。因此,例如,如果将Model1绑定到表user_confirmations
,则应将文件和类重命名为UserConfirmations
-这将被视为最佳实践。