Php 为什么ORM doen';你不能把东西还给我吗?
我正在研究Laravel5.4,我有一个关于ORM的问题。 为什么这两个代码样本的行为会发送不同的信息:Php 为什么ORM doen';你不能把东西还给我吗?,php,laravel-5,orm,Php,Laravel 5,Orm,我正在研究Laravel5.4,我有一个关于ORM的问题。 为什么这两个代码样本的行为会发送不同的信息: Foo::whereId(13632)->first(); => null DB::table('foo')->where('id', '=', 13632)->first(); => Foo{...} 我的班福: class Foo extends Model { protected $table = 'foo'; ... } 如果我尝
Foo::whereId(13632)->first(); => null
DB::table('foo')->where('id', '=', 13632)->first(); => Foo{...}
我的班福:
class Foo extends Model
{
protected $table = 'foo';
...
}
如果我尝试在数据库(SQL)中执行此操作:
我拿到了所有数据
如果我尝试在另一个id上执行相同的操作,它会起作用:
Foo::whereId(13634)->first(); => Foo{...}
DB::table('foo')->where('id', '=', 13634)->first(); => Foo{...}
如果我尝试在Phpmyadmin中执行以下操作:
SELECT * FROM `foo` WHERE `id` = 13634
我得到了所有正确的数据
谢谢。以上两个查询代码您想要什么?两者都应该返回一个对象,其中id=13632 table
foo
和doctors
实际上是两个不同的东西。Foo::find(13632)
返回什么?@NikleshRaut:是的,这就是我期望的原因,但事实是Foo::whereId(13632)->first();返回null,而不是对象Foo。@kerbholz:这是一个错误,表是“Foo”而不是“doctors”。我更正了我的帖子。感谢您从Foo::find(13632)获得的信息代码>?另外,请确保您已将此Foo类作为使用App\Foo
?以上两个查询代码的用途是什么?两者都应该返回一个对象,其中id=13632 tablefoo
和doctors
实际上是两个不同的东西。Foo::find(13632)
返回什么?@NikleshRaut:是的,这就是我期望的原因,但事实是Foo::whereId(13632)->first();返回null,而不是对象Foo。@kerbholz:这是一个错误,表是“Foo”而不是“doctors”。我更正了我的帖子。感谢您从Foo::find(13632)获得的信息代码>?另外,请确保您已将此Foo类作为使用App\Foo
?
SELECT * FROM `foo` WHERE `id` = 13634