如何在 PhpStorm 中为 Laravel 资源启用自动完成?
How to enable autocomplete for Laravel Resources in PhpStorm?
Laravel 5.5 有一个新的 API 资源功能,它很好地重定向了对模型属性的调用(如 $this->id
)。我使用 ide-helper:models
为类型提示所有模型属性的模型生成 phpdoc。但是,这不适用于资源,我得到 "Field accessed via magic method" 波浪线。有没有办法在不复制的情况下将其指向模型的 phpdoc?
你可以使用 @mixin
这是一个示例,如果您想要 User 模型 中的 User Resource 中的 properties/phpdocs,则执行像这样
namespace App\Http\Resources;
use Illuminate\Http\Resources\Json\Resource;
/**
* Class User
*
* @mixin \User
* */
class User extends Resource
{
public function toArray($request)
{
return [
'id' => $this->id,
'name' => $this->name,
'email' => $this->email,
'created_at' => $this->created_at,
'updated_at' => $this->updated_at,
];
}
}
Laravel 5.5 有一个新的 API 资源功能,它很好地重定向了对模型属性的调用(如 $this->id
)。我使用 ide-helper:models
为类型提示所有模型属性的模型生成 phpdoc。但是,这不适用于资源,我得到 "Field accessed via magic method" 波浪线。有没有办法在不复制的情况下将其指向模型的 phpdoc?
你可以使用 @mixin
这是一个示例,如果您想要 User 模型 中的 User Resource 中的 properties/phpdocs,则执行像这样
namespace App\Http\Resources;
use Illuminate\Http\Resources\Json\Resource;
/**
* Class User
*
* @mixin \User
* */
class User extends Resource
{
public function toArray($request)
{
return [
'id' => $this->id,
'name' => $this->name,
'email' => $this->email,
'created_at' => $this->created_at,
'updated_at' => $this->updated_at,
];
}
}