【问题标题】:Laravel Eloquent ORM query not working Laravel v6.9Laravel Eloquent ORM 查询不工作 Laravel v6.9
【发布时间】:2020-04-16 02:50:48
【问题描述】:

我无法在控制器中查询我的模型。

$model = MyModel::find(1)->get();

但它说:

在 \App\MyModel 中找不到方法“find”

Laravel 6.9 版

【问题讨论】:

  • 你能展示你模型的内容吗?
  • 同样当你使用find时,你不需要getfind 方法自动返回集合的第一个模型。
  • 做了MyModel extends Model?
  • @TsaiKoga 是的,,
  • class MyModel extends Model { /** * 与模型关联的表。 * * @var string */ // 告诉模型使用哪个表 protected $table = 'my_model';受保护的 $primaryKey = 'id'; // 批量分配保护防止字段 // 默认情况下被填充。告诉模型哪些字段是可填充的。受保护的 $fillable = ['name', ]; }

标签: laravel eloquent orm


【解决方案1】:

更改您的代码,例如 $model = MyModel::find(1);$model = MyModel::where('id', 1)->first(); 并且不要忘记在您的 MyModel 类中扩展 Model 类,例如 MyModel extends Model{} 。试试看吧。

【讨论】:

  • 和“\App\MyModel 中找不到方法'find'”是一样的
  • 你能给MyModel类代码吗?我想要完整的代码。
  • 您是否在上述模型中导入了这个use Illuminate\Database\Eloquent\Model;
  • class MyModel extends Model { /** * 与模型关联的表。 * * @var string */ // 告诉模型使用哪个表 protected $table = 'my_model';受保护的 $primaryKey = 'id'; // 批量分配保护防止字段 // 默认情况下被填充。告诉模型哪些字段是可填充的。受保护的 $fillable = ['name', ]; }
  • 是的,命名空间应用程序;使用 Illuminate\Database\Eloquent\Model;
猜你喜欢
  • 1970-01-01
  • 2015-01-21
  • 1970-01-01
  • 1970-01-01
  • 2015-12-06
  • 2016-06-13
  • 2015-05-16
  • 2019-03-15
  • 2021-12-29
相关资源
最近更新 更多