如何在 Laravel 中使用非 ORM 模型?

问题描述 投票:0回答:1

模型是一个只有状态而没有行为的对象,用于业务逻辑。

Eloquent-ORM 模型属于这个定义。 PlotOptions 类属于同一定义,它为下拉菜单提供值,与数据库无关。

class PlotOptions {

    public array $water = ["...", "...", "..."];
    public array $gas = ["...", "..."];
    public array $electricity = ["...", "...", "...", "..."];
    public array $sewer = ["...", "...", "..."];
}

但是,Models 目录已经为 ORM 模型保留了。

PlotOptions这样的类应该如何分类以及存放在哪个目录下?

laravel model
1个回答
0
投票

对于目录结构,您可以考虑创建一个单独的目录(例如 DataModels 或 DTO)来存储这些类。这有助于让您的项目保持井井有条,并清楚地表明这些类与 ORM 模型不同。

这是一个示例目录结构:

- app
  - Models // ORM models
    - User.php
    - Post.php
    - ...
  - DataModels // Data transfer objects or configuration classes
    - PlotOptions.php
    - OtherDataModel.php
    - ...
  - Services // Business logic services
    - SomeService.php
    - AnotherService.php
    - ...
  - ...

通过这种方式,您可以清楚地区分 ORM 模型和其他类型的模型或数据保存类。选择适合您的特定项目和团队偏好的结构很重要,但关键是保持其组织性和可维护性。

© www.soinside.com 2019 - 2024. All rights reserved.