PHPStorm автозаполнение веточек

17

Я использую PHPStorm 8.1 как IDE в проекте php (проект laravel 4.1 с веточкой на стороне просмотра)

Будет хорошо иметь подсказку автозаполнения на vars на "стороне ветки", как вы можете видеть здесь, в этом плагине phpstorm для symfony2:
http://symfony2-plugin.espend.de/languages/twig/index.html#phptypes

В основном в моем представлении twig я объявляю var "type", используя комментарий, тогда я бы увидел подсказки на моей модели (farmaco):

   {# farmaco \Farmaco #}
   {% farmaco.  %} <-- I would see hints -->

Примечание. Я не использую Symfony, однако у меня установлен плагин symfony, но автозаполнение не работает для меня в twig файлах для моего проекта laravel.

  • 0
    У шаблонов веток есть расширение html или twig ?
  • 0
    оба: template.html.twig , однако проблема может быть в namspace, в L4 это не явно внутри классов, но обрабатывается картой классов composer / autoload.
Показать ещё 1 комментарий
Теги:
phpstorm

1 ответ

34
Лучший ответ

Кажется, у вас отсутствует аннотация @var. Правильная форма:

{# @var foo \FooService #}
{{ foo. }} <!-- press CTRL+SPACE for typehints -->

Я получил эту работу для проекта без symfony без проблем. Обязательно убедитесь, что плагин symfony действительно включен для проекта (это не по умолчанию) и перезапустите среду IDE после ее включения.

Также убедитесь, что указатель типа указывает на полное имя класса.


Как побочный элемент, я еще не получил это для работы над свойствами, то есть foo.bar.* Когда свойство доступно через магию (используя __get). Для этих случаев свойство должно быть помещено в собственную переменную:

{# @var foo \FooService #}
{{ foo.bar. }} <!-- no typehints for bar :-( -->
{% set bar = foo.bar %}
{# @var bar \BarService #}
{{ bar.  }} <!-- press CTRL+SPACE for typehints :-) -->
  • 1
    спасибо, наконец, плагин var и symfony делает автозаполнение работающим. О свойствах они работают в моем случае, потому что я использую в своих моделях сгенерированные аннотации, т. Е. @property string $ permalink, они создаются автоматически github.com/barryvdh/laravel-ide-helper
  • 0
    Работает и для Silex 2. Спасибо!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню