Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 遗传模型Laravel 5_Database_Laravel_Inheritance - Fatal编程技术网

Database 遗传模型Laravel 5

Database 遗传模型Laravel 5,database,laravel,inheritance,Database,Laravel,Inheritance,我对拉威尔有意见。我需要创建两个这样的类: Class Users {} Class Companies extends Users {} 这是一种继承关系。这是我的数据库: 我不知道如何在Laravel创建模型用户和公司。以及如何使用它们。 你能帮我吗 提前谢谢你 如果您使用的是artisan,那么只需在终端中键入以下命令,即可将pwd作为项目目录: 这将创建一个名为User的类的User.php文件,该文件继承自雄辩的模型类Model.php 如果要创建模型并在数据库中创建具有特定列的表

我对拉威尔有意见。我需要创建两个这样的类:

Class Users {}
Class Companies extends Users {}
这是一种继承关系。这是我的数据库:

我不知道如何在Laravel创建模型用户和公司。以及如何使用它们。 你能帮我吗


提前谢谢你

如果您使用的是
artisan
,那么只需在终端中键入以下命令,即可将
pwd
作为项目目录:

这将创建一个名为User的类的
User.php
文件,该文件继承自雄辩的模型类Model.php

如果要创建模型并在数据库中创建具有特定列的表,可以在前面的命令中使用
--migration
参数,例如:

php artisan make:model User --migration
use Illuminate\Database\Eloquent\Model;


class User extends Model 
{

}
运行此命令后,您必须打开
数据库/migrations
,并根据需要修改创建的文件以创建表

如果您不使用artisan,那么您应该使用,您可以通过在扩展自eloquent模型的文件中创建新类来手动创建模型

例如:

php artisan make:model User --migration
use Illuminate\Database\Eloquent\Model;


class User extends Model 
{

}
应该是这样

如需进一步阅读,请查阅Laravel的文档,其中包含您所有的基本问题,如您刚才提出的问题


关于模型文档的链接,clikc

我从图表中不清楚数据库中的关系是什么-公司
上的
id
用户
上的
id
的外键吗?如果是这样,这是一种继承关系(我将其理解为“公司是一种特殊类型的用户”),为什么
siren
是主键的一部分,这意味着
users
中的一行可以连接到
companys
中的多行?是的,companys上的id是用户id的外键。公司是一种特殊类型的用户:)。但是对于一个用户来说,可能只有一家公司,也可能没有。你真的需要这里的继承吗?Eloquent不支持这一点,可以通过覆盖Eloquent的一些方法来实现这一点,但在您的情况下,这似乎不值得付出努力。用户和公司之间一对一的关系还不够吗?哦,我觉得我的解释不好。我知道如何创建模型以及如何使用它等等。。。但我不知道如何创建具有继承关系的模型。laravel文档没有提到这一点,继承关系?你是说OOP继承吗?