包含多个类的 Laravel 模型

标签 laravel laravel-4

我是 Laravel 的新手,来自 Codeigntier。我试图掌握 Laravel 使用的模型/类/ Eloquent 约定。我知道我可以在我的数据库中创建一个名为“类别”的表。然后我可以在我的模型文件夹中创建一个名为 category.php 的文件,其中仅包含以下代码:

Class Category extends Eloquent { }

它会自动将表名与名称的复数形式(“类别”)连接起来,并让我可以访问 Controller 中的所有 Eloquent 命令,例如 Category::All();

以下是我不明白的地方:我是否需要为数据库中的每个表创建一个新模型?在那种情况下,我最终会在我的模型文件夹中得到一堆文件,名称如 resource1.php、resource2.php 等,每个文件只包含与上面相同的代码(替换类的名称)。

我不能只创建一个名为“database_handler.php”的模型,然后将所有这些类放在同一个地方吗?

最佳答案

是的,您可以创建一个 database_handler.php 文件并执行以下操作:

<?php

    Class Category extends Eloquent { }
    Class Post extends Eloquent { }
    Class Client extends Eloquent { }

您可以做任何 PHP 让您做的事,并且可以将许多类添加到单个 .php 文件中。但这不是一个好的做法,Laravel 就是使用最好的方法开发应用程序。

要自动加载此文件,您可以执行以下操作之一:

1) 将此文件添加到您的 app/models 文件夹。

2) 在你的 composer.json 中为它添加一个条目:

"autoload": {
    "files": [
        "app/database_handler.php"
    ]
},

然后你就必须

composer dump-autoload -o

3) 为它创建一个不同的文件夹,并将它添加到 composer json 自动加载部分。

你选择,Laravel 会让你随心所欲。

关于包含多个类的 Laravel 模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21432173/

相关文章:

php - Laravel 存储文件的公共(public) url

php - 在 Laravel 中将对象转换为关联数组

php - Laravel 关系表用户和地址

php - Laravel 的全局修改器

Laravel:一对多对多,检索 unique() 值

javascript - 文本未从 Laravel 中的 summernote 存储

php - Laravel 电子邮件验证链接不起作用?

Php Artisan 迁移 super 慢?

php - 如何使用 Laravel 4 Eloquent 连接列?

php - Laravel 添加 ?发邮件