【发布时间】:2023-01-11 03:46:28
【问题描述】:
我使用的是最新版本的 PhpStorm (2022.3.1) 和 Laravel 9+。这不是一个大问题,而是一个主要的问题。
出于某种原因,当我使用模型创建这样的自定义属性时:
public function getFormattedStartDateAttribute(): string
{
if (!$this->start_date) {
return 'TBD';
} else {
return $this->start_date->format('M. d, Y');
}
}
并在这样或这样的视图中使用:
- 日期
{{ $event->formattedStartDate }} - 日期
{{ $event->formatted_start_date }}
PhpStorm 仍然说该方法有 no usages?
有没有办法来解决这个问题?我试过重新索引我的项目。这是一项名为Code Vision 的新功能。
【问题讨论】:
-
听起来你应该在那个插件的问题跟踪器中打开一个问题。 PhpStorm 本身不知道 Blade 模板中的任何事件都会导致调用该函数。另外,您是否在模板中为模型设置了任何类型提示?
-
“并在这样或这样的视图中使用:”PhpStorm 在这里是正确的——没有明确/直接
getFormattedStartDateAttribut()方法的用法。这个方法被 Laravel 在底层调用。并且 PhpStorm 不提供任何 Laravel 特定的功能。如果有的话,它是由 Laravel 特定插件(如 Laravel Idea)提供的。所以你最好联系插件作者,他可以做些什么让 PhpStorm 知道调用$event->formatted_start_date实际上是间接使用getFormattedStartDateAttribute()方法。 -
好的,谢谢你的帮助。我会联系插件的作者。
-
其实我不认为它来自 Laravel Idea 插件。我禁用了它,但使用数据仍在显示。我想我会联系 PhpStorm。
-
“并且使用数据仍在显示” - 你是什么意思? “No usages”是 PhpStorm 最新功能 Code Vision 的一部分