1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/aiweline-WelineFramework

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

WelineFramework

Быстрое начало работы

Использование Docker-окружения

Внимание! Этот образ нельзя использовать в рабочей среде.

Чтобы начать работу, необходимо выполнить следующие шаги:

  1. Вытянуть образ.
  2. Запустить контейнер с использованием образа.
  3. После запуска сразу же перейти на панель управления по адресу http://127.0.0.1 (http://127.0.0.1/admin_123).
  4. Ввести логин и пароль администратора: admin / admin.
  5. Панель управления доступна по адресу: http://127.0.0.1:8888/weline, логин и пароль: weline / weline.
docker pull aiweline/weline:dev
# -d фоновый режим -p сопоставление портов -it взаимодействие с командной строкой -v сопоставление локального каталога с контейнером Docker 
docker run -d --name weline -p 80:80 -p 8888:8888 -p 3306:3306 -p 888:888 -p 21:21 -p 22:22 -it -v E:\WelineFramework\DEV-workspace:/www/wwwroot/weline.com aiweline/weline:dev /bin/bash

Документация разработчика: https://gitee.com/aiweline/WelineFramework/wikis

Введение

Тестовая среда: https://weline.aiweline.com/

Панель управления: http://weline.aiweline.com/admin_weline/admin/login, логин: admin, пароль: admin

Weline Framework — это микрофреймворк PHP!

├── app                 # каталог приложения
│   ├── code            # код
│   ├── design          # темы
│   ├── etc             # конфигурация
│   └── i18n            # языковые пакеты
├── bin                 # каталог команд
├── dev                 # каталог разработки
├── extend              # расширение
├── generated           # автоматически генерируемый системой каталог
│   ├── code            # код
│   ├── language        # язык
│   └── routers         # маршрутизация
├── pub                 # общий каталог
│   ├── errors          # каталог ошибок
│   ├── readme          # информация о проекте
│   └── static          # статические файлы
├── setup               # обновление и установка
│   ├── readme          # информация об обновлении
│   ├── static          # каталог статических файлов для обновления
│   └── step            # обновление кода
├── var                 # каталог данных
│   ├── cache           # кэш [только файловый кэш]
│   ├── log             # журнал
│   └── session         # Session [только файловая сессия]
└── vendor              # Composer — сторонние расширения

Документация разработчика: https://gitee.com/aiweline/WelineFramework/wikis

Архитектура программного обеспечения

PHP>=8.1
composer>=2
nginx/apache
mysql>=5.8
mariadb>=10.6

Инструкция по установке

  1. Скачать исходный код с помощью composer.
composer create-project aiweline/weline-framework WelineFramework --prefer-dist

1. Установка проекта

1. Развертывание веб-проекта.
2. Не требуется настраивать nginx (в проекте есть пример настройки, который можно включить в конфигурацию) или Apache (настройка для проектов Apache написана с учётом псевдостатической конфигурации), достаточно указать каталог проекта в качестве каталога развертывания.

2. Команды фреймворка

1. Команда установки модуля: bin/m module:upgrade. Эта команда обновляет установку модуля и данные модуля.
2. Команда отключения модуля: bin/m module:disable <module_name>. Эта команда обновляет модуль и данные модуля (выполняет сценарий удаления модуля Setup\Install.php).
3. Команда удаления модуля: bin/m module:remove <module_name>. Эта команда создаёт резервную копию модуля и удаляет модуль (выполняет сценарий удаления модуля Setup\Remove.php).
4. Другие команды: php bin/m. Введите команду, чтобы увидеть список доступных команд.

Цель фреймворка

Разработка элегантного и высокодоступного фреймворка: основной упор в использовании фреймворка делается на удобство, простоту, гибкость и скорость разработки.

Особенности фреймворка

Поддержка кроссплатформенности: Windows/Linux.

1. Встроенный бэкенд

1) ACL-управление доступом. Детальный контроль доступа к методам get, post, delete, update и другим.

2) Управление URL. Реализация любой SEO-перезаписи ссылок.

3) I18N — управление глобальными словарями. Возможность самостоятельно устанавливать страны и регионы, а также собирать словари для перевода с фронтенда. Переводчики могут выполнять перевод, или можно интегрировать API сторонних разработчиков для автоматического перевода.

4) Управление кэшем. Управление различными типами кэша, возможность управлять каждым типом кэша отдельно.

5) Планирование задач. Сбор информации о запланированных задачах в каждом модуле, включая возможность блокировки, блокировки и запуска. Планирование задач поддерживается в Windows и Linux.

6) Управление событиями. Возможность просматривать текущие события.

7) Управление плагинами. Просмотр местоположения плагинов.

8) Управление модулями. Просмотр и блокировка компонентов в реальном времени.

9) SMTP-управление. Настройка SMTP.

10) Разработка конфигурации. Встроенная документация для разработчиков, упрощающая поиск ресурсов для разработки. Встроенные два шаблона разработки: фронтенд и бэкенд, которые можно быстро настроить для проекта.

11) Управление контентом. Дизайнеры могут создавать собственные CMS-страницы, поддерживая как фронтенд-шаблоны, так и PHP-код непосредственно в бэкенде, реализуя AJAX для анализа переменных фронтенд-шаблонов и формирования страниц предварительного просмотра. Добавлена версия контроля (разработка продолжается...).

12) Механизм внутреннего тестирования сайта. Добавление параметра sandbox_key к URL приведёт к запуску механизма «Золотой воробей», и данные будут отправлены в тестовую систему, не загрязняя основную систему. Рекомендуется сочетать с IP-сегментами для реализации.

  1. ORM

1) Операции с моделью. Модель использует магические методы для преобразования в запросы и контейнеры данных, что упрощает операции ORM. Модель поставляется с архивированием данных, разбиением на страницы, функцией возврата дерева, автоматическим анализом имён таблиц, быстрым объединением, настраиваемыми дополнительными SQL-запросами и возможностью определения сложных операций во время запросов.

2) Источник данных модели. Поддерживается использование основной базы данных фреймворка в качестве источника данных для модели, а также использование модели в качестве основного источника данных для нескольких баз данных. Это означает, что модель может получать данные из нескольких указанных баз данных, а не только из пула баз данных, настроенного в основной базе данных фреймворка. Модель также может иметь свой собственный пул баз данных.

3) Разделение чтения и записи модели. Чтение и запись данных модели могут быть разделены между основной базой данных и несколькими указанными базами данных. Текущий алгоритм является случайным алгоритмом без балансировщика нагрузки.

3. Пользовательские высокопроизводительные шаблоны рендеринга

1) Теги. Поддержка популярных тегов, таких как lang, if, foreach, else, block и template. Можно использовать события для создания пользовательских тегов.

2) Кэширование без тегов. Как только тег будет проанализирован и станет шаблоном кэша [полностью состоящим из HTML-кода и PHP-кода], никаких следов тега не останется, и при следующем чтении он не будет повторно анализироваться [среда разработки будет продолжать чтение].

3) Шаблоны без перевода. Язык активируется на этапе анализа тегов и сохраняется в разных языковых каталогах, поэтому нет необходимости переводить PHP-коды снова. Уменьшает процесс перевода PHP. [Среда реального перевода будет продолжать перевод].

4) Фронтенд Hook-механизм. Можно внедрить крючки в страницу, например, head_after, и механизм шаблонов автоматически проанализирует этот крючок.

4. Контейнеры

1) Упрощение процесса создания экземпляров. И поставляется с процессом создания экземпляра, автоматически анализируя зависимости инициализации и не требуя использования new ClassName(). Можно напрямую создать экземпляр $demo в __construct(\Weline\Demo\Model\Demo $demo).

2) Зависимость от аннотаций PHP8. Помогает анализировать аннотации ACL для классов или методов, обеспечивая выполнение аннотаций. Предоставляет событие, которое помогает контроллеру определить тип анализа или выполнения аннотаций во время выполнения. Функция аннотаций позволяет выполнять проверку параметров и проверку входа в систему и другие быстрые проверки.

5. Предустановленные команды

Координируйте управление фреймворком. Подробные команды и способы их использования см. в php bin/m. Общие команды включают:

cache                         module # Weline_CacheManager
-cache:clear                         # Очистить кэш.
-cache:flush                         # Обновить кэш.
-cache:reset                         #
``` **Weline_Framework_System**
-system:install  # 框架安装

**6. Тема Theme.**

Можно переписать все шаблоны в модуле, чтобы легко реализовать пользовательскую тему.

#### Использование
После загрузки и распаковки или создания проекта с помощью composer скопируйте файлы проекта в корневой каталог веб-сайта. Затем перейдите к доменному имени веб-сайта, чтобы войти в интерфейс установки. После настройки информации установка будет завершена, и вы перейдёте на главную страницу фреймворка.

На главной странице есть краткое введение и интерфейс для передней и задней части. По умолчанию учётные данные — admin. Войдите в бэкенд и измените пароль учётной записи во вкладке «Управление пользователями», чтобы предотвратить утечку информации об учётной записи.

Кроме того, пожалуйста, измените интерфейс входа для серверной части и интерфейс REST API. Расположение для изменения: app/code/etc/env.php.

#### Обновление
Версия выпуска:

v1.3 — пользовательские метки, оптимизация ядра, быстрый перевод меток с помощью translate.

v1.1 — решение проблем с первоначальной установкой и обновление ядра фреймворка.

#### Руководство по обновлению
1. Скопируйте composer.json соответствующей версии.
2. Установите среду в режим разработки: php bin/m deploy:mode:set dev.
3. Обновите composer: composer update.
4. Выполните команду обновления системы: php bin/m s:up.
5. Переведите среду в рабочий режим: php bin/m deploy:mode:set prod.

#### Участие и вклад

1. Форкните этот репозиторий.
2. Создайте ветку Feat_xxx.
3. Отправьте код.
4. Создайте Pull Request.
5. Для отправки кода свяжитесь со мной.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Это высокопроизводительный PHP8 фреймворк, созданный для того, чтобы обеспечить баланс между элегантностью и производительностью! 1. Простота разработки и высокая эффективность. 2. Сильная применимость без изобретения колеса. 3. Высокая производительность и понятность при сохранении оригинальных свойств языка. 5. Сокращённое количество зависимос... Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/aiweline-WelineFramework.git
git@api.gitlife.ru:oschina-mirror/aiweline-WelineFramework.git
oschina-mirror
aiweline-WelineFramework
aiweline-WelineFramework
master