PhP Artisan命令从数据库Laravel 5创建类?

时间:2015-09-16 15:44:17

标签: php database class laravel-5 php-5.6

是否存在用于从数据库创建所有必需类的php artisan命令?

我有一个数据库,里面有几个表(用MySQL运行),我希望有一个php类抽象,这意味着每个简单的过程(创建,更新,删除,插入)都是通过这个过程自动创建的表示我的数据库中的表的类。

关键是能够为CRUD调用具有相同功能的每个类:

User->create(); // may return the last id inserted

Book->update("create_date", "2015-09-09");

User->delete(1);   // may remove the user with primary key "1"
Book->delete(410); // may remove the book with primary key "410"

或者是否有现成的外部Laravel 5兼容插件来执行此任务?

2 个答案:

答案 0 :(得分:1)

您正在寻找的是make:model命令。

例如:

php artisan make:model User

将为您的User表创建一个模型(命名约定都可以被覆盖)。

您需要单独为每个表运行make:model Name命令,Artisan不能自动为您执行每个操作,但一旦创建,您将拥有所有可用的标准Eloquent methods允许你create, update, delete, show

答案 1 :(得分:0)

您可以使用artisan命令:  安装Laracademy Generators:

composer require "laracademy/generators"

然后将Laracademy Generators添加到config / app.php文件中:

Laracademy\Generators\GeneratorsServiceProvider::class

或者,如果您只想将此提供程序用于本地开发,则可以将提供程序添加到“app / Providers / AppServiceProvider.php”:

public function register(){
if($this->app->environment() == 'local') {
    $this->app->register('\Laracademy\Generators\GeneratorsServiceProvider');
}}

现在您已拥有开始使用Laracademy Generators所需的一切。让我们探讨如何使用它以及可用的选项。如果您检查Artisan cli,列表中将出现一个新命令:

generate:modelfromtable

首先,您可以传递-all标志,告诉Laracademy Generators为您数据库中存在的所有表生成模型:

php artisan generate:modelfromtable --all

希望这有助于你:)