#php #angularjs #laravel #phpstorm #organization
#php #angularjs #laravel #phpstorm #организация
Вопрос:
Я использую Laravel (PHP Framework) для своего веб-сайта. В Laravel организация кода (в общих чертах) выглядит следующим образом
/app
/views
[my base file A].php
[my base file B].php
[my base file C].php
/public
/css
/js
/lib
index.php
На самом деле в /app
нем много папок, но я показал только важную, в которую я добавлю: /views
.
Из-за того, как Laravel организует вещи, public/index.php
файл используется в качестве основного загружаемого представления приложения, но он загружает фактический html из одного из views/[my base file].php
файлов.
Так [my base file A].php
выглядело бы, например, так:
<link rel="stylesheet" href="css/Normalize.css" type="text/css" />
<link rel="stylesheet" href="css/bootstrap.min.css" type="text/css">
<link rel="stylesheet" href="css/out.css" type="text/css" />
где находится папка, css/
потому что эта разметка в конечном итоге попадет в public/index.php
. Я получаю ошибки, потому что в этом файле app/views/
нет css/
папки.
Я боюсь, что по мере заполнения этих файлов большим количеством кода и ссылок на вещи в public/
папке, я получу слишком много ошибок, на мой вкус. Мой пример приведен только <link>
сейчас, но у меня будет гораздо больше. Мне также нужно завершение — я буду использовать прямые привязки AngularJS из $ scope, как в <h3> {{messages.hello}} </h3>
(это означает, что я получу доступ к переменной в файле javascript, и мне нужно завершение, чтобы упростить жизнь).
Итак, мой вопрос таков: что я хотел бы сделать, так это по-прежнему выполнять все отчеты о завершении / intellisense / ошибках для файлов в /views
, как будто файл находился в /public
папке и уже является частью index.php
… Кто-нибудь знает способ сделать это?
В настоящее время я думаю о чем-то вроде перемещения моего кода из папки, но
— Это может быть плохой практикой перемещать эти вещи в папку, обозначенную как общедоступная
— Это может испортить Laravel
Комментарии:
1. возможно, это видео поможет. Предназначен для WebStorm, но концепции в phpstorm те же go.jetbrains.com/426QVD1140001sB00u0SV00
2. Пометьте
public
папку как корневой каталог ресурса3. Спасибо @LazyOne! Отправьте ответ, и я дам вам чек.
Ответ №1:
Вам нужно пометить public
папку как корневой каталог ресурса.