webman中使用的是use support\Model;
时间: 2024-03-11 09:51:15 浏览: 129
如果您在 Webman 中使用的是 `support\Model` 类,那么全局默认插入的实现方式也有所不同。具体步骤如下:
1. 在您的 Webman 项目中,创建一个 `app/Models/BaseModel.php` 文件,并扩展 `support\Model` 类。例如:
```php
namespace App\Models;
use support\Model;
class BaseModel extends Model
{
protected static function boot()
{
parent::boot();
static::creating(function ($model) {
$model->is_active = true;
});
}
}
```
在这里,我们创建了一个名为 `BaseModel` 的基础模型,并使用 `creating` 事件来设置默认值。该事件在模型创建时触发,因此我们可以在此处设置默认值。在这里,我们将 `is_active` 字段设置为 `true`。
2. 在您的 Webman 项目中,创建其他的 Eloquent 模型文件,例如 `app/Models/User.php`。在该文件中,扩展 `BaseModel` 类而不是 `Illuminate\Database\Eloquent\Model` 类。例如:
```php
namespace App\Models;
class User extends BaseModel
{
// Other model code here
}
```
在这里,我们扩展了 `BaseModel` 类来继承默认插入功能,同时也可以在该模型中添加其他自定义方法和属性。
3. 在您的 Webman 代码中,可以使用新的 Eloquent 模型来创建记录。例如:
```php
use App\Models\User;
$user = new User;
$user->name = 'John';
$user->email = 'john@example.com';
$user->save();
```
在这里,我们创建一个新的 `User` 模型,并设置 `name` 和 `email` 字段。当我们调用 `save` 方法时,`creating` 事件将会触发,并将 `is_active` 字段设置为 `true`。
希望这能够解决您的问题。
阅读全文