Eloquent模型和模型之间的区别?

ela*_*rib 9 php orm model laravel eloquent

所以,我对此感到困惑:在Laravel的官方文档中,他们说:

Laravel附带的Eloquent ORM提供了一个漂亮,简单的ActiveRecord实现,用于处理数据库.每个数据库表都有一个相应的"模型",用于与该表进行交互.

Ok util在这里一切都很棒,我明白了!

所以我进行迁移以创建数据库:php artisan make:migration create_items_table --create ="items"

很棒,直到这里:)

所以从理论上讲,当我要制作:php artisan make:model Item时 ,Laravel会创建一个php类(用于与items表交互):

   class Item extends Eloquent {

     ...

    }
Run Code Online (Sandbox Code Playgroud)

但是,在现实世界中,当我制作:php artisan make:model Item,Laravel创建php类(用于与items表交互)::

   class Item extends Model {

     ...

    }
Run Code Online (Sandbox Code Playgroud)

那么为什么模型而不是雄辩?我错过了吗?Eloquent Model和Model之间有什么区别?

如果有区别的话,我什么时候应该使用Eloquent和模特......?

谢谢^^

ela*_*rib 8

我找到了问题的解决方案......

所以通常你必须在config/app.php中添加一个别名

 'aliases' => [
        'Eloquent'  => Illuminate\Database\Eloquent\Model::class,
Run Code Online (Sandbox Code Playgroud)

当你创建一个模型时,Laravel use Eloquent;代替use Illuminate\Database\Eloquent\Model;这个为什么我认为,有些人可能会使用Model,当其他人可能使用Eloquent 时,它只是给命名空间赋予意义感:3

  • yap 5.1 也默认扩展了 Model,你不需要添加这个。 (2认同)