我可以有一个没有数据库 table 的 Laravel 模型吗?
Can I have a Laravel Model without a database table?
我想要一个具有 Laravel 模型的所有特性和功能的 Laravel 模型,但是模型的数据是完全静态的,永远不会改变。我可以为它创建一个数据库 table,但这留下了有人直接修改 table 的可能性。
例如:
// Model Data for Log Levels
name | icon | color
-------------------------------------------
Emergency | fas fa-ambulance | red
Alert | fas fa-bullhorn | yellow
Critical | fas fa-heartbeast | orange
....
这将是数据,存储在模型文件中,就好像它是一个数据库 table,但永远不能更改。这可能吗?
我认为您可以使用一个简单的模型,无需创建用于注入数据的表单,并使用播种器在第一次(当您 运行 迁移时)包含您的数据。
您可以使用 寿司。
Eloquent 缺少“数组”驱动程序。
有时您想使用 Eloquent,但又不想处理数据库。
class State extends Model
{
use \Sushi\Sushi;
protected $rows = [
[
'name' => 'Emergency',
'icon' => 'fas fa-ambulance',
'color' => 'red'
],
[
'name' => 'Alert',
'icon' => 'fas fa-bullhorn',
'color' => 'yellow'
],
[
'name' => 'Critical',
'icon' => 'fas fa-heartbeast',
'color' => 'orange'
],
];
}
我想要一个具有 Laravel 模型的所有特性和功能的 Laravel 模型,但是模型的数据是完全静态的,永远不会改变。我可以为它创建一个数据库 table,但这留下了有人直接修改 table 的可能性。
例如:
// Model Data for Log Levels
name | icon | color
-------------------------------------------
Emergency | fas fa-ambulance | red
Alert | fas fa-bullhorn | yellow
Critical | fas fa-heartbeast | orange
....
这将是数据,存储在模型文件中,就好像它是一个数据库 table,但永远不能更改。这可能吗?
我认为您可以使用一个简单的模型,无需创建用于注入数据的表单,并使用播种器在第一次(当您 运行 迁移时)包含您的数据。
您可以使用 寿司。
Eloquent 缺少“数组”驱动程序。
有时您想使用 Eloquent,但又不想处理数据库。
class State extends Model
{
use \Sushi\Sushi;
protected $rows = [
[
'name' => 'Emergency',
'icon' => 'fas fa-ambulance',
'color' => 'red'
],
[
'name' => 'Alert',
'icon' => 'fas fa-bullhorn',
'color' => 'yellow'
],
[
'name' => 'Critical',
'icon' => 'fas fa-heartbeast',
'color' => 'orange'
],
];
}