Итак, в прошлый раз я описал и дал примерный дистрибутив для поднятия веб-сервера под нашу ерп.
Далее, я уже сделал некий набросок, чтобы можно было начинать с чего-то. Скачать его можно с гитхаба.
Теперь о том, что я там сделал.
в каждом билде( build/билд) есть определенная иерархия папок:
_dat - папка с кешем, настройками.. в общем, всем тем, что не надо обычно вообще трогать.
configs - папка с конфигурациями, в которой, как минимум, должно быть 2 файла: 1 - connections.php (в котором содержится массив с параметрами подключения) и main.cfg (сериализованный массив с необходимыми для запуска параметрами )
inc - папка со вспомогательными классами (на данный момент, в ней есть только eController, который описывает особенности контроллеров модулей данного билда)
plugins - папка с плагинами (о разнице между обычными модулями и плагинами - позже).
Все остальное на ваш вкус и цвет. В данном случае, вкус и цвет будут мои :), поэтому пока присутствует в нем только папка main, где находится первый модуль, сопсно, главной страницы.
Да, забыл сказать, тут кругом ООП и mvc, если вы не понимаете что и как, лучше полистайте сначала теорию.
..Папка с темой сайта имеет тоже 1 ограничение: в ней должна быть html/public/index.html - по сути, главная страница (точка входа) и error.html - для вывода ошибок.
Все файлы и конфиги имеют комментарии, так что заблудиться вы не должны.
В проекте будет использоваться 2 базы данных: одна под данные проектов, вторая под логи. Логи планируются большие и интересные. Почему 2? потому что при большом кол-ве пользователей логов будет много. Обычно в продакшене базы бекапятся и база с данными проектов будет не маленькая, да и бекапить ее нужно чаще чем логи, а место не резиновое да и чем меньше данных тем быстрее идет бекап.
Что касается перечня сторонних библиотек, что я предполагаю использовать:
проект пишу не для продажи, так что с точки зрения лицензий проблем не должно быть.
В общем, как только Вы все настроете, запустите сервер, зайдете не главную страницу и увидите, логин-форму и приветствие. На данный момент, это пока все.
Далее, я уже сделал некий набросок, чтобы можно было начинать с чего-то. Скачать его можно с гитхаба.
Теперь о том, что я там сделал.
1. основа того, что я там сделал - mwce, поэтому у нас изначально есть некоторые, назовем их, правила:
сама бизнес-часть(php-скрипты) будет находится в папке build/erp, визуальная часть, то есть интерфейс, будет находиться в theme/erp.в каждом билде( build/билд) есть определенная иерархия папок:
_dat - папка с кешем, настройками.. в общем, всем тем, что не надо обычно вообще трогать.
configs - папка с конфигурациями, в которой, как минимум, должно быть 2 файла: 1 - connections.php (в котором содержится массив с параметрами подключения) и main.cfg (сериализованный массив с необходимыми для запуска параметрами )
inc - папка со вспомогательными классами (на данный момент, в ней есть только eController, который описывает особенности контроллеров модулей данного билда)
plugins - папка с плагинами (о разнице между обычными модулями и плагинами - позже).
Все остальное на ваш вкус и цвет. В данном случае, вкус и цвет будут мои :), поэтому пока присутствует в нем только папка main, где находится первый модуль, сопсно, главной страницы.
Да, забыл сказать, тут кругом ООП и mvc, если вы не понимаете что и как, лучше полистайте сначала теорию.
..Папка с темой сайта имеет тоже 1 ограничение: в ней должна быть html/public/index.html - по сути, главная страница (точка входа) и error.html - для вывода ошибок.
2. Как это все заставить работать.
При данной конфигурации, пока все просто: заходите в build/erp/configs/connections.php и меняете там данные сервера СУБД под свои. Пока база пустая, поэтому можно создать любую и указать ее в конфиге.3. Что используется и каковы возможности.
Ну понятно, что php + html + js. Я буду писать все это дело на mysql, точнее MariaDB (для простого проекта разницы не будет). В качестве ядра использую свою CMS mwce, в принципе, при большом желании, можно писать сайт на ms sql, класс работы с бд является оберткой над PDO так что ограничения только в фантазии и навыках. Список вшитых типов коннекта(для конфига) можно найти сверху в файле mwce/Connect.php.Все файлы и конфиги имеют комментарии, так что заблудиться вы не должны.
В проекте будет использоваться 2 базы данных: одна под данные проектов, вторая под логи. Логи планируются большие и интересные. Почему 2? потому что при большом кол-ве пользователей логов будет много. Обычно в продакшене базы бекапятся и база с данными проектов будет не маленькая, да и бекапить ее нужно чаще чем логи, а место не резиновое да и чем меньше данных тем быстрее идет бекап.
Что касается перечня сторонних библиотек, что я предполагаю использовать:
- PHPMailer
- bootstap 3 (да, я лентяй и делать дизайн не особо хочу)
- jquery 3.1
- dialog ui
- ckeditor
- jquery.qtip(?)
проект пишу не для продажи, так что с точки зрения лицензий проблем не должно быть.
В общем, как только Вы все настроете, запустите сервер, зайдете не главную страницу и увидите, логин-форму и приветствие. На данный момент, это пока все.
Комментариев нет:
Отправить комментарий