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

OSCHINA-MIRROR/weidong100-Wedo

Клонировать/Скачать
CHANGELOG.md 62 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 02.12.2024 07:37 01a8264

Обновление версии 2019-1-11 V5.0.24

Данное обновление содержит одно безопасное обновление. Рекомендуется обновить версию.

  • Улучшен связанный метод save.
  • Улучшена проверка модели данных.
  • В коллекцию добавлен метод values.
  • Улучшен метод unique проверки.
  • Улучшён метод method класса Request.

Обновление версии 2018-12-9 V5.0.23

Основное изменение в этом обновлении — это безопасное обновление, которое рекомендуется обновить как можно скорее.

  • Поддержка вызова модели в запросе Query.
  • Поддержка поля DISTINCT в агрегированном запросе.
  • Улучшение параметров в проверке замыкания.
  • Много-ко-многим связанным таблицам можно указать имя промежуточной таблицы.
  • Добавлена поддержка полей before/after для проверки.
  • Улучшения в много-ко-многим связанной таблице.
  • Улучшены правила проверки.
  • Добавление правил afterWith и beforeWith для сравнения дат.
  • Усовершенствованы подсказки правил.
  • Исправлены проблемы с повторным подключением после обрыва соединения.
  • Исправлено удаление модели методом destroy.
  • Модель теперь имеет метод replace.
  • Метод make добавлен в MorphOne для создания связанного объекта.
  • Изменён тип возвращаемого значения метода count.
  • Улучшено регулярное выражение в методе агрегированного запроса.
  • Улучшен драйвер SQLsrv.
  • Доработано связанное сохранение модели.
  • Исправлен способ получения имени контроллера.

Обновление версии 2018-10-22 V5.0.22

В этой версии добавлена поддержка формата журнала JSON, а также одно безопасное обновление.

  • Отключена кэш-память маршрутов в режиме отладки.
  • Улучшен класс Log для поддержки формата журнала json.
  • Повышена безопасность агрегированных запросов.
  • Тип возвращаемого значения в методе count улучшен.

Обновление версии 2018-9-7 V5.0.21

Это обновление включает исправления некоторых известных проблем, улучшения поддержки Swoole, а также добавление функции кэширования маршрутов.

  • Кэширование маршрутов добавлено.
  • Решена проблема с портом в URL.
  • Улучшен кэш драйверов.
  • Улучшена обработка метода value в кэше.
  • Исправлена ошибка в Builder insertAll.
  • Улучшена поддержка Swoole (с использованием ссылки: xavier-swoole).

Обновление версии 2018-5-11 V5.0.20

Эта версия является исправленной версией, которая устраняет некоторые известные проблемы.

  • Условия join поддерживают передачу объекта Expression.
  • Улучшен parseKey в драйвере.
  • Улучшен host в классе Request.
  • Исключения при использовании exp для обновления данных.
  • Запрос исправлен.
  • Обновлён метод сохранения модели для много-ко-много связанным таблицам.

Обновление версии 2018-4-25 V5.0.19

Данная версия представляет собой улучшенную версию, основное внимание уделяется улучшению composer и встроенного механизма шаблонов.

  • Улучшен composer.
  • Улучшен механизм встроенных шаблонов.
  • Улучшен анализ комментариев.
  • Проблема с распределённой записью и своевременным чтением данных решена.
  • Автоматическое преобразование операций URL улучшено.
  • Магические методы разбиения на страницы возвращают значение.
  • Журнал SQL добавляет метку главного и подчинённого серверов.

Обновление версии 2018-4-14 V5.0.18

Основная цель этого обновления — исправить ошибки предыдущего выпуска и улучшить выражения exp.

  • Исправлен метод field и его совместимость с символом *.
  • Исправленные методы inc и dec.
  • Исправленный метод setInc и setDec.
  • Улучшенный метод insertAll.
  • Улучшенный метод parseTime.
  • Выражения exp стали более строгими.

Обновление версии 2018-4-12 V5.0.17

Этот выпуск включает в себя исправления и улучшения, а также безопасное обновление.

  • Улучшен create в Response.
  • Инc и dec улучшены.
  • По умолчанию шаблоны используют имена методов операций.
  • Улучшен view в Request.
  • IP в Request поддерживает настройку прокси.
  • Исправлен create в Request.
  • Закрытие запроса вызывает исключение при cache(true).
  • Улучшен автоматический загрузчик composer.
  • Добавлено выражение Expression и связанные методы.

Обновление версии 2018-3-26 V5.0.16

Цель этого обновления — внести исправления и улучшения, включая безопасное обновление.

  • Улучшен URL.
  • Производительность composer улучшена.
  • Одно-к-одному запросу улучшен.
  • Кэш запроса улучшен.
  • Field улучшен.
  • Оптимизирован Template.
  • Параметр разбивки на страницы улучшен.
  • Автоматический распознавание шаблона улучшено.
  • Query улучшен.
  • Collection улучшен.
  • readTransform в модели улучшен для обработки сериализации.
  • Трассировка улучшена.
  • Файл журнала автоматически очищается.
  • Обнаружение разрыва соединения улучшено.
  • Проверка улучшена.
  • Определено поле view в Query.
  • Привязка параметров улучшена.
  • Удаление файла улучшено.
  • Безопасность inc, dec и exp улучшена.
  • Конфигурация консоли улучшена. Улучшения в Loader классе, методах controller и validate
  • Улучшена многоязычная поддержка для сообщений об ошибках проверки.
  • Добавлена многоязычная поддержка сообщений об ошибках для класса File.
  • Исправлены проблемы с обработкой исключений при рендеринге шаблонов.
  • Внесены улучшения в REST контроллер.
  • Усовершенствован trace драйвер.
  • Оптимизирован метод remember класса Cache.
  • Решены проблемы с кодировкой URL при использовании метода url_common_param.
  • Проведена оптимизация класса Url.
  • Расширена поддержка замыканий в параметре конфигурации exception_handle.
  • Перед выполнением команды RUNTIME_PATH проверяется наличие пути.
  • Скорректировано поведение метода dec класса CacheDriver при пустом значении.
  • Улучшено отображение на мобильных устройствах.
  • Повышена эффективность поддержки плагина JSON-Handle.
  • Обновлён метод get класса redis.
  • Доработан метод host класса Request.

Версия 5.0.11 (2017-09-08)

Версия 5.0.11 является безопасной и содержит исправления и улучшения по сравнению с предыдущей версией. Были обновлены некоторые уязвимости безопасности, включая:

  • Улучшение драйвера кэша.
  • Модификация запросов к базе данных.
  • Обновление класса генерации URL.
  • Поддержка указания срока действия для кэшированных данных.

Изменения в базе данных и модели

  • Улучшен класс драйвера базы данных.
  • Разрешены конфликты ключевых слов в методе group.
  • Исправлено возвращение null при агрегированных запросах.
  • Реализовано принудительное переподключение в классе Db.
  • Улучшено связывание атрибутов.
  • Исправлена проблема с повторным подключением после разрыва соединения.
  • Откорректированы условия транзакций при разрыве соединения.
  • Класс Db дополнен методом clear.
  • Обработаны случаи с нулевыми значениями в массивах условий.
  • Метод chunk класса Query поддерживает настройку сортировки.
  • Методы has классов HasOne и HasMany оптимизированы.
  • Мягкое удаление теперь корректно работает с ассоциациями.
  • Обработка нескольких запросов к одному полю улучшена.

Другие изменения

  • Срок действия кэша теперь можно указать с помощью параметра DateTime.
  • Генератор URL теперь поддерживает номера портов.
  • Исключения RouteNotFound обрабатываются более эффективно.
  • Глобальное сопоставление маршрутов обеспечивает полное соответствие.
  • Частично исправлены ошибки в сообщениях об ошибках валидации.
  • Поддерживается вывод данных в формате XML.
  • Тернарные операторы в шаблонах оптимизированы.
  • Сообщения об ошибках при отсутствии контроллера улучшены.
  • Функция input helper поддерживает получение переменных route.
  • Конфигурационные параметры могут быть прочитаны из дополнительных файлов конфигурации.
  • Разбиение на страницы было усовершенствовано.
  • Проблема с пространством имён Trait была решена.
  • Метод env класса Request был обновлён.
  • Предпочтение отдаётся многоязычным настройкам Cookie.
  • При получении меток кэша фильтруются недействительные метки.
  • Ошибка в пакетной регистрации маршрутов была исправлена.
  • Параметр конфигурации exception_handle теперь может использовать замыкания для определения обработки render.
  • Запрос на поддержку кэша включает настройку тегов кэша.
  • Для метода remember класса Cache добавлен механизм блокировки.
  • Загрузка SWF файлов в классе Upload была улучшена.
  • Префикс Session класса был обновлён.

Версия 5.0.10 (2017-07-04)

Эта версия представляет собой исправление ошибок и обновление безопасности. Основные изменения включают:

  • Улучшения в базе данных и моделях.
  • Добавление новых функций мониторинга поведения.
  • Маршрутизация с поддержкой настройки Response.
  • Повышение безопасности при отладке.

Изменения в базе данных и модели

  • Исправлен некорректный синтаксис удаления при объединении с другими таблицами.
  • Коррекция удалённого доступа «один ко многим».
  • Поддержка replace в insertall.
  • Многоуровневые ассоциации «многие ко многим» теперь работают корректно.
  • Модель автоматически обновляет поле update_time после сохранения.
  • Новый метод removeRelation в модели.
  • Новые методы setInc и setDec в модели.
  • Динамическое управление полями времени с помощью autoWriteTimestamp.
  • Драйвер базы данных обрабатывает разрыв соединения более точно.
  • Ассоциативные данные обновляются более эффективно.
  • BelongsToMany запросы оптимизированы.
  • Проблемы с методами value и column класса Query были решены.
  • Повторяющиеся значения в in запросах больше не возникают.
  • Передача значений в scope метод модели стала более надёжной.
  • Позиция проверки before_update в модели была скорректирована.
  • Третье ассоциативное значение теперь поддерживается в модификаторах и геттерах.

Прочие изменения

  • По умолчанию отладка отключена.

  • Ошибки загрузки временных файлов в extra каталоге были устранены.

  • Мониторинг завершения записи в журнал log_write_done был добавлен.

  • Генерация общих файлов в Build была улучшена.

  • Строка поведения response_send была добавлена.

  • Маршрут теперь может привязывать обработку response.

  • Переадресация была обновлена.

  • Логические значения в среде теперь обрабатываются корректно.

  • URL-адрес домена в классе Url был улучшен.

  • Создание командных файлов было исправлено.

  • Командные URL-адреса были улучшены.

  • app_host параметр устанавливает корневой URL по умолчанию.

  • isSsl метод класса Request теперь учитывает CDN.

  • Запись trace информации в журнале была упрощена с помощью record_trace. IN / NOT IN 型查询条件为空导致的 SQL 语法错误

  • Исправление метода toArray класса, реализующего разбиение на страницы.

  • Исправление обработки метода delete класса Model для составных первичных ключей.

  • Исправление поддержки мягкого удаления в MongoDB.

  • Исправление возможной ошибки в классе Connection.

  • Улучшение механизма кэширования метода find класса Query.

  • Исправление связи BelongsTo.

  • Исправление JOIN-способа для предварительной загрузки одно-к-одному.

  • Исправление возможного предупреждения об ошибке в методе insert класса Query.

  • Исправление конфликта use в коллекции Model.

  • Исправление метода hasWhere класса Model.

  • Исправление поддержки параметра ext в генерации URL.

  • Метод clear файлового кэша удаляет пустые каталоги.

  • Исправление проблемы в методе parseUrlPath класса Route.

Настройка:

  • По умолчанию отключена безопасная опция secure, которая может быть включена только при использовании HTTPS.

2017-02-07 V5.0.6

Основные настройки:

Это обновление в основном предназначено для исправления ошибок и оптимизации (можно выполнить обновление без проблем).

  • Поддержка механизма переподключения к базе данных при потере соединения;
  • Улучшены события запросов;
  • Улучшен механизм автоматического кэширования данных;
  • Добавлена настройка для автоматического преобразования формата времени;
  • Ядро MongoDB и Oracle было обновлено до последней версии.

[База данных и модель]

  • Исправлен метод hasMany в отношении «имеет»;
  • Устранены некоторые конфигурации по умолчанию, чтобы избежать влияния при использовании расширений базы данных;
  • Улучшено возвращаемое значение метода attach для многих ко многим;
  • Добавлено управление повторным подключением MySQL и переключатель;
  • Улучшен механизм кэширования данных в методе find класса Query;
  • Улучшены параметры обратного вызова событий запроса в классе Query;
  • Улучшена автоматическая синхронизация обновлений в классе Query;
  • В классе Model добавлен метод readonly;
  • Улучшены методы has и hasWhere в классе Model;
  • Улучшены методы get и all в классе Model, где второй параметр равен true или числу, что указывает на параметры кэширования;
  • Исправлена ошибка синтаксиса SQL, вызванная пустым условием в запросе;
  • Улучшен метод setBuilder в классе Query, чтобы предотвратить проблемы с поиском генератора после создания пользовательского соединителя;
  • Удалено устаревшее свойство resultSetType в классе Connection;
  • Оптимизирован метод close в классе Connection;
  • Исправлены проблемы совместимости с мягким удалением, поддерживающим MongoDB;

[Другое]

  • Улучшен класс Url при генерации корня как /;
  • Переопределены функции redirect в помощнике и методе redirect контроллера с параметром with;
  • Глобальный запрос добавлен в правила исключения, добавлены параметры конфигурации request_cache_except;
  • Параметр store в классе Cache допускает значение null, что означает получение текущего дескриптора кэша;
  • Улучшены правила проверки IP в классе Validate.

2017-01-23 V5.0.5

Основные настройки:

Основное внимание в этом обновлении уделяется улучшению уровня доступа к данным и моделированию связей:

  • Добавление быстрого поиска и методов настройки;
  • Добавление функций статистики связей;
  • Добавление отложенной предварительной загрузки связей;
  • Одно-к-одному автоматическое создание и удаление;
  • Улучшенное выполнение хранимых процедур;
  • Улучшенный вывод связанных данных;
  • Повышение производительности запросов;
  • Автоматическое форматирование вывода временных полей модели.

[Запрос и маршрутизация]

  • Улучшено обнаружение суффиксов в определении маршрутов;
  • Класс Route поддерживает перекрытие определения методом rest;
  • Методы put и post в классе Request поддерживают формат JSON;
  • Запрос класса добавляет метод contentType;
  • Улучшения в методе setRule класса Route;
  • Улучшения в создании метода класса Request;
  • Влияние маршрутизации на контроллеры и методы рендеринга шаблонов по умолчанию;
  • Исправления в методе build класса Url после определения псевдонима.

[База данных и моделирование]

  • Добавлены функции статистики связей;
  • Одно-к-одному автоматическому созданию;
  • Улучшен метод delete в модели агрегирования;
  • Улучшен метод useGlobalScope в модели;
  • Модельные поля даты могут быть установлены как имена классов;
  • Классы Query добавляют методы data, inc, dec и exp для быстрой настройки параметров insert и update, которые могут быть пустыми и считывать данные из data;
  • Повышена производительность запросов в Connection;
  • Улучшен анализ порядка в Builder;
  • Улучшен attach в BelongsToMany;
  • BelongsToMany улучшает attach, поддерживает пакетное создание;
  • Улучшает saveall в BelongsToMany, добавляя третий параметр для указания, должны ли дополнительные параметры быть одинаковыми;
  • Query упорядочивает метод, который поддерживает многократное объединение вызовов;
  • Улучшенная поддержка group в подсчёте;
  • Проверка наличия временных меток при записи данных;
  • Улучшен writeTransform в модели;
  • Улучшено чтение и запись временных меток в модели;
  • При записи данных в виде объекта проверяется наличие метода __toString;
  • Улучшен getFields в MySQL-драйвере;
  • Улучшено автоматическое форматирование выходных данных временных полей;
  • Условия запроса like поддерживают массивы;
  • Автоматически использует форматирование времени при получении временных полей;
  • Улучшено выполнение одиночных запросов с несколькими условиями Or;
  • Объединение условий null;
  • Улучшен paginate в Query, первый параметр можно передать в виде массива;
  • Преобразование данных в наборы данных с помощью метода select в Query, исходные запросы больше не поддерживают возврат наборов данных;
  • Добавляет whereNull, whereIn и другие быстрые методы запроса;
  • Изменён fetchPdo;
  • Улучшена поддержка хранимых процедур, улучшен вызов getRealSql, улучшено связывание параметров с полями с использованием подчёркивания;
  • Параметры конфигурации базы данных добавляют result_type для установки типа возвращаемых данных, а также изменяют имена параметров методов;
  • Улучшен whereTime в Query для поддержки большего количества выражений даты и времени (по умолчанию используется условие больше указанного выражения даты и времени);
  • Отменяет значения по умолчанию для min, max, sum и avg;
  • Query добавляет метод getPdo для возврата объектов PDOStatement;
  • Улучшен today в выражении даты и времени;
  • Улучшено получение связанных атрибутов;
  • Решена проблема повторного выполнения условий в связанных определениях;
  • Связанное определение автоматически связывает китайские поля;
  • Builder улучшает insertall, обрабатывая нулевые значения и объекты;
  • Типы привязки параметров поддерживают битовые типы;
  • Connection заменяет model на getQuery;
  • Оптимизация __call в Connection;
  • Агрегатная модель исправлена;
  • Предварительная загрузка по одному предварительно загружается с использованием IN;
  • Добавить функцию load_relation для отложенной предварительной загрузки массивов;
  • Model has метод поддерживает использование массивов и замыканий во втором параметре, нет необходимости использовать hasWhere;
  • Relation поддерживает вложенные связанные запросы;
  • Think\model\Collection используется в качестве набора данных модели;
  • Отменить атрибут alias в связанном определении (только morphTo сохраняет);
  • Модель delete поддерживает отсутствие первичного ключа;
  • Разрешить разделять запятыми строки в allowField в модели;
  • Проблема с искажением имён параметров при автоматической привязке параметров;
  • Связанные атрибуты по умолчанию используют строчные буквы и подчёркивание;
  • Повторный вызов методов with и relation в Query;
  • Collection добавляет скрытые, видимые и добавленные методы;
  • Мягкое удаление принудительного удаления улучшено;

[Прочее]

  • Уникальная проверка правил поддерживает указание полной модели класса и сначала проверяет, существует ли модель класса, если нет, то проверяет данные таблицы;
  • Улучшенные методы loader model, controller и validate, позволяющие напрямую передавать экземпляры классов для создания экземпляров;
  • Session добавляет безопасные параметры httponly и secure;
  • Можно разрешить настраиваемый драйвер Output для адаптации к командам командной строки и другим командам;
  • Loader action улучшает обработку параметров загрязнения;
  • Validate улучшает сообщение об ошибке;
  • Cookie помощник улучшает поддержку префиксов;
  • Файл кэша по умолчанию включает подкаталог кэша, чтобы избежать слишком большого количества файлов и снижения производительности.

[Настройка]

  • Заменить model в Connection на getQuery;
  • Исходные запросы больше не возвращают наборы данных;
  • Разбиение на страницы возвращает тип think\Paginator (использование не изменилось);
  • Временные поля модели автоматически форматируются, дополнительная обработка не требуется;
  • Secure и httponly добавлены в Session, по умолчанию установлено значение true. Запрос класса post метода поддерживает получение данных в формате JSON.
  • Маршрутизация к классу метода и контроллеру метода поддерживает передачу дополнительных параметров, используемых для параметров метода.
  • Улучшение автоматического поиска контроллера.
  • Улучшения кэширования запросов.
  • Улучшенное автоматическое связывание параметров.
  • Исправление настроек кэша маршрутизации.
  • Улучшенный метод name класса Route.

[База данных и модель]

  • Добавление событий запросов базы данных (CURD).
  • Улучшенная обработка многотабличных обновлений при отсутствии полей.
  • Улучшенный метод useGlobalScope класса Model.
  • Исправлена проблема с использованием подзапросов в качестве имён таблиц.
  • Добавлен атрибут resultSetType в класс Model для указания типа набора данных модели (по умолчанию возвращает пустой массив).
  • Метод toCollection класса Model теперь автоматический.
  • Настройка ассоциации моделей.
  • Улучшена поддержка параметров lowerCamelCase и _lower_snake_case для метода with.
  • Исправлены ошибки в ассоциации «многие ко многим».
  • Улучшен запрос ассоциации «многие ко многим».
  • Поддержка полиморфной ассоциации «один ко многим».
  • Предварительная загрузка ассоциаций объектов позволяет привязывать атрибуты текущего объекта к модели.
  • Поддерживается добавление атрибутов связанного объекта в текущий объект модели.
  • Один-к-одному ассоциация: предварительная загрузка поддерживает JOIN и IN (по умолчанию используется JOIN).
  • Улучшены запросы «многие ко многим».
  • Улучшено сравнение изменений данных при обновлении модели.
  • Запросы поддерживают многократное использование одного поля в условиях.
  • Улучшен журнал SQL-запросов.
  • Исправлен конфликт псевдонимов при использовании имени таблицы в запросе.
  • Объединение атрибута connection класса модели и конфигурации по умолчанию.
  • Улучшено автоматическое связывание параметров для условий IN и BETWEEN.
  • Класс Query поддерживает сортировку объектов наборов данных и связанных полей.
  • Ускорены события модели.
  • Улучшен метод getTableInfo класса Query для кэширования чтения.
  • Метод saveAll класса model поддерживает вызов метода allowField для фильтрации полей.
  • Исправлена ошибка в методе whereTime при запросах ассоциации.
  • Улучшенные агрегатные запросы класса Query.
  • Поддержка строковых подзапросов методом table.
  • Исправлено некорректное возвращение SQL при использовании методов count и avg с fetchsql.

[Прочее]

  • Улучшен логирование в командной строке.
  • Логирование упрощено в режиме развёртывания.
  • Введён тип журнала debug для режима отладки.
  • Улучшен метод parseTemplateFile класса Template.
  • Улучшен метод getRuleMsg класса Validate.
  • Контроллер: метод error по умолчанию возвращает пустой URL при AJAX-запросах.
  • Добавлено поле field в метод setRuleMsg класса Validate для описания поля проверки.
  • Улучшен метод invokeMethod класса App для поддержки внедрения зависимостей в функции архитектуры.
  • Добавлен метод restore класса RedirectResponse для возврата значения.
  • Статический метод share класса View для статического присвоения значений переменным шаблона.
  • Проверка: добавлен метод hasScene для определения наличия сценария проверки.
  • Исправлены методы destroy классов redis и session для корректного возврата значений.
  • Удалены суффиксы операций из параметров методов.
  • Вызов request и view в контроллере с указанием типов.
  • Улучшен помощник input для получения многомерных данных.
  • Классы Cache: добавлены методы pull и remember.
  • Улучшена проверка класса: поддержка автоматического распознавания правил подтверждения.
  • Улучшено определение ошибок в классе проверки.
  • Разрешено переопределение сообщений об ошибках в классе Validate.
  • Cookie: добавлен метод forever для постоянного сохранения.
  • Шаблоны: поддерживается чтение шаблонов из корневого каталога представлений.
  • Улучшен метод exec класса Hook.

[Настройка]

  • Db: запросы больше не поддерживают настройку пользовательских наборов данных.
  • Исключён метод fetchClass класса Query.
  • Контроллеры: метод error при AJAX-запросах по умолчанию возвращает пустой URL.
  • Методы ассоциации должны использовать стиль именования CamelCase.
  • Поведение методов должно использовать стиль именования CamelCase. Проверка ошибок поддерживает многоязычное чтение
  • Улучшение ROOT_PATH константы.
  • Улучшения в загрузке языковых пакетов.
  • Улучшения в получении переменных сеанса и cookie шаблона, автоматическое определение префикса.
  • Унификация обработчика метода для получения дескриптора объекта операции в драйвере кэша. Некоторые типы кэша могут быть нулевыми.
  • Метод __call класса File для совместимости с версиями 5.0 методов md5 и sha1.
  • Улучшения метода clear драйвера файлового кэша.
  • У метода setLangCookieExpire класса Lang есть возможность устанавливать срок действия многоязычных куки.
  • Добавление параметра конфигурации route_complete_match.

[Настройка]

Следующие свойства и методы модели были изменены с статических на динамические:

  • Свойство relationModel агрегированной модели.
  • Атрибут useGlobalScope модели Model.
  • Динамический метод глобального диапазона запросов вместо базового.
  • Мягкое удаление атрибута deleteTime.

2016-9-28 V5.0.1

Основные настройки:

  • Завершена работа над внедрением зависимостей (215849).
  • Изменена настройка расположения файла конфигурации (118027).
  • Добавлена команда для полей таблицы данных.
  • Поддержка установки текущего объекта запроса.
  • Поддержка запроса и маршрутизации кэширования (215850).

Запрос и маршрутизация

  • Улучшен метод success и error контроллера для определения адреса перехода, поддерживается больше схем.
  • Методы операций и архитектуры поддерживают автоматическую инъекцию любых объектов.
  • В классе Request добавлен метод getInput для получения значения php://input.
  • Маршрутизация к методу поддерживает внедрение запроса архитектуры.
  • Улучшено определение маршрута класса Route.
  • Класс Request имеет метод cache для поддержки запроса кэширования.
  • После привязки к модулю маршрут по-прежнему проверяется в первую очередь.
  • Маршрут имеет параметр кэширования запроса.
  • Исправлены ошибки в определении комбинированных переменных маршрута.

База данных

  • Исправление ошибок в информации о полях таблицы базы данных pgsql.
  • Улучшен метод view класса Query, значение по умолчанию второго параметра изменено на true для получения всех полей.
  • Информация о конфигурации базы данных имеет параметр query для настройки имени объекта запроса.
  • Тип имеет атрибут query для настройки требуемого имени объекта запроса модели.
  • Улучшена обработка поля таблицы данных кэша.
  • Модель или абстрактный класс не генерируют кэш поля таблицы, если они не наследуют класс Model.
  • Виртуальная модель не генерирует кэш поля таблицы.
  • Поддерживается генерация кэша поля таблицы для моделей, считываемых из модуля.
  • Улучшены методы сохранения агрегированных моделей для записи первичного ключа.
  • Поле модели field упрощено, метод allowField и метод setFieldType класса Query и связанные атрибуты отменены.
  • Кэш поля таблицы может быть сгенерирован для нескольких баз данных.
  • Обновлён класс драйвера базы данных, улучшен метод getTables.
  • Добавлен optimize:schema для генерации информации о поле таблицы кэша.
  • Исправлена ошибка при связывании нескольких условий в одном параметре.
  • Второй параметр метода paginate для разбивки на страницы представляет собой общее количество записей.
  • Исправлен запрос MySQL JSON.
  • Улучшен метод getOptions класса Query, возвращающий null, когда имя параметра не существует.

Модель и связь

  • Не нужно добавлять определение типа поля в модель field.
  • Статический метод getDb добавлен в класс Model для получения объекта запроса db.
  • Улучшен метод save класса Model, возвращая значение.
  • Улучшен метод сохранения класса Relation.
  • Исправлена проблема с сохранением модели «многие ко многим».
  • Улучшен метод сохранения модели Model, решая проблему обновления без первичного ключа.
  • Если время равно нулю при получении, преобразование не выполняется.

Другое

  • Улучшено создание кэша конфигурации, поддерживающее расширение конфигурации.
  • Отменён параметр extra_config_list, файлы расширенной конфигурации можно размещать непосредственно в каталоге extra без дополнительной загрузки (расположение файла конфигурации базы данных не изменилось).
  • Функция cache helper поддерживает проверку эффективности кэша.
  • Исправлена конфигурация класса драйвера шаблона, метод config.
  • Решена проблема, возникающая при использовании __call для вызова db() в случае, когда атрибут Model field равен true.
  • Улучшен метод config драйвера шаблона для поддержки получения значений параметров конфигурации.
  • Улучшено разрешение URL перенаправления.
  • Удалены методы md5 и sha1 класса File, заменённые методом hash, который поддерживает генерацию большего количества типов хэшей.
  • Добавлено действие response_end.
  • Улучшена загрузка по умолчанию. Улучшения в классе Session для автоматической инициализации
  • В класс Session добавлен метод pull для получения и удаления данных.

Увеличение класса Env для получения переменных окружения

  • Добавлен класс Env, который позволяет получать переменные окружения.

Изменения в методах get/post/put класса Request

  • После присвоения значений методы get/post/put продолжают работать корректно.

Улучшение в работе метода Jump для перехода по URL

  • Метод Jump поддерживает разбор URL с помощью функции Url::build.

Оптимизация класса Hook

  • Класс Hook оптимизирован.

Применение режима отладки и поддержка переменных окружения в режиме трассировки

  • Режим отладки и трассировка поддерживают установку переменных окружения.

Конфигурационный помощник config

  • Функция config('?name') используется для работы с конфигурацией.

Использование константы BIND_MODULE для привязки модулей

  • Модули можно привязать с использованием константы BIND_MODULE.

Автоматическое связывание модулей во входном файле

  • Во входном файле автоматически связываются модули.

Улучшения в обработке ошибок и шаблонах в классе Validate

  • Ошибки проверки обрабатываются более эффективно, а шаблоны вывода ошибок улучшены.

Доработка консоли и добавление методов вывода

  • Консоль дополнена несколькими полезными методами вывода.

Добавление функции token для отображения токенов на странице

  • Для быстрого отображения токенов добавлена функция token.

Введение метода halt для отладки переменных и прерывания вывода

  • Метод halt позволяет приостановить выполнение программы и отладить переменные.

Разделение правил проверки чисел и целых чисел в классе Validate

  • Правила проверки чисел и целых чисел разделены в классе Validate.

Оптимизация автозагрузки с помощью optimize:autoload

  • Автозагрузка расширений оптимизирована с помощью команды optimize:autoload.

Улучшенная проверка логических значений в классе Validate для поддержки форм

  • Логические значения проверяются более точно для обработки данных из форм.

Расширение функций cookie для определения наличия cookie

  • Функции cookie позволяют определить наличие cookie.

Обновление функции abort для выдачи исключений HttpResponseException

  • Исключения HttpResponseException выдаются с помощью обновлённой функции abort.

Обработка ошибок при загрузке файлов в классе File

  • Обработка ошибок при загрузке файлов улучшена в классе File.

Изменение метода move в классе File для возврата информации о загруженном файле

  • Метод move возвращает информацию о загруженном файле.

Преобразование методов clear и optimize:config

  • Методы clear и optimize:config преобразованы.

Проверка типов изображений в классах File и Validate

  • Типы изображений проверяются в классах File и Validate.

Поддержка внедрения объектов Request в контроллеры

  • Контроллеры могут внедрять объекты Request.

Получение данных с файлами с помощью метода param(true) в классе Request

  • Данные с файлами можно получить с помощью метода param(true).

Ввод данных с использованием функции input

  • Первый параметр функции input теперь имеет значение по умолчанию.

Правила проверки изображений в классе Validate и поддержка различных типов данных

  • Улучшена проверка изображений в классе Validate, поддерживается несколько типов данных.

Выдача исключений при ошибках кодирования при выводе JSON

  • При ошибках кодирования JSON выдаются исключения.

[Изменения]

Отмена статических маршрутов (маршрутов без использования контроллера)

  • Статические маршруты больше не используются.

Удаление параметра url_deny_suffix, вместо него используется deny_ext в маршрутах

  • Параметр url_deny_suffix удалён, его заменил параметр deny_ext.

Метод save модели возвращает количество затронутых строк, параметр getId удалён

  • Модель возвращает количество затронутых строк после выполнения метода save, параметр getId больше не используется.

Контроллер возвращает имя контроллера в верблюжьем регистре

  • Имя контроллера возвращается в верблюжьем регистре.

Исключение при отсутствии метода перед выполнением операции контроллера

  • Если перед операцией контроллера нет метода, выбрасывается исключение.

Добавлен параметр name в методе db класса Loader

  • У метода db класса Loader появился параметр name.

У функции db появился третий параметр для указания соединения

  • Третий параметр функции db указывает соединение.

По умолчанию драйвер SQLSRV не преобразует данные таблицы в нижний регистр

  • Драйвер SQLSRV по умолчанию не преобразует данные таблиц в нижний регистр.

Драйвер srv заменён на пакет расширения

  • Вместо драйвера srv используется пакет расширения.

Драйверы Oracle и Firebird перемещены в пакеты расширения

  • Драйверы Oracle и Firebird теперь находятся в пакетах расширения.

Файл alias.php больше не используется

  • Файл alias.php удалён.

Чтение параметров конфигурации без учёта переменных окружения, использование класса Env

  • Параметры конфигурации читаются без учёта переменных окружения с помощью класса Env.

Формат файла конфигурации изменён с массива на ini

  • Формат файла конфигурации изменился с массива на формат ini.

Порядок загрузки состояний и расширений изменён для удобства

  • Порядок загрузки состояний и расширений стал более удобным.

Привязка доменов к группам маршрутов больше не поддерживается

  • Домены больше нельзя привязать к группам маршрутов.

Параметры url в методах success и error контроллера могут быть пустыми

  • Успех и ошибка контроллера не зависят от параметров url.

Методы контроллера error, success, result и redirect не требуют return

  • Методы контроллера error, success, result и redirect больше не требуют использования return.

Права доступа для создания каталогов установлены на 0644

  • Права доступа для создания каталогов — 0644.

Версия RC4 от 2016-07-01

[Архитектура]

  • Добавлен класс Request для автоматического внедрения
  • Унифицирован механизм автоматической загрузки Composer.
  • Расширены возможности класса Response.
  • Добавлены классы File для операций с файлами и Upload для загрузки файлов.
  • Отменена поддержка режима SAE, используется расширение пакета.
  • Оптимизирован фреймворк.
  • Улучшен механизм исключений.
  • Классы App для ввода и вывода данных оптимизированы.
  • Обеспечена полная поддержка модульного тестирования.
  • Созданы новые консольные команды.
  • Удалены большинство констант вне пути приложения.
  • Динамически генерируется файл сопоставления классов, содержащий классы приложения.

[База данных]

  • Разделение таблиц по правилам.
  • Добавление запросов по дате и времени.
  • Поддержка постраничного запроса.
  • Запросы к представлениям.
  • Сохранение регистра данных таблицы.
  • Автоматический механизм обновления кэша.
  • Полная поддержка транзакций.
  • Улучшено чтение данных процедур.
  • Настройка типа возвращаемых данных запроса.

[Модели]

  • Расширение модели Merge.
  • Модели поддерживают динамические запросы.
  • Больше типов автоматического преобразования.
  • Глобальный диапазон запросов.
  • Токен и массив поддерживают скрытие и добавление атрибутов.
  • Дальнее отношение один ко многим.

[Другое]

  • Структура журнала изменена.
  • Trace отделена от журнала и усилена.
  • Input интегрирован в Request.
  • Файлы сопоставления классов создаются с помощью команд.
  • Проверка класса проверяет данные без ссылки.
  • Маршрут MISS добавлен.
  • Маршрутные псевдонимы добавлены.

Версия RC3 от 2016-04-23

[Архитектура]

  • Репозитории ядра и приложений разделены для независимого обновления Composer.
  • База данных разделена на Connection, Query и Builder.
  • Модель переработана для большей объектности.

[База данных]

  • Новый синтаксис запросов.
  • Закрытые запросы и транзакции.
  • Объекты запросов.
  • Пакетная обработка данных.
  • Мониторинг выполнения SQL.

[Модель]

  • Объектно-ориентированные операции.
  • Статический вызов (запрос).
  • Чтение и запись.
  • Поля временных меток.
  • Доступ к объектам и массивам.
  • Сериализация JSON.
  • Триггеры событий.
  • Область видимости.
  • Автоматическое преобразование типов.
  • Валидация и завершение данных.
  • Ассоциативные запросы и записи.
  • Предварительная загрузка ассоциаций.

[Прочее]

  • Переработан маршрутизатор.
  • Обновлён класс Validate.
  • Builder для быстрого создания модулей.
  • Генератор URL.
  • Класс Validate обновлён.
  • Шаблоны и механизмы просмотра обновлены.
  • Тема шаблона удалена.
  • Исправлены ошибки сообщества.
  • Помощники переименованы.
  • Расположение файла router.php изменено.

Версия RC2 от 2016-03-11

  • Полностью переработанные механизмы автоматической валидации и автодополнения (поддержка существующих механизмов через traits\model\Auto).
  • Независимый дизайн класса Validate.
  • Генерация кода перенесена в консоль.
  • Работа с регистрами полей таблиц.
  • Обновление класса Controller (отмена traits\contorller\View).
  • Обновление класса Input.
  • Обновление класса Url.
  • Обновление класса Cookie.
  • Оптимизация Loader.
  • Оптимизация Route.
  • Оптимизация Template.
  • Автоматическая инициализация Session.
  • Bulk — модель для массовых операций (интеграция с traits\model).
  • Кэширование и логирование с поддержкой Test.
  • Улучшения в механизме исключений и обработки ошибок.
  • Управление преобразованием URL в контроллер и действие.
  • Установка суффиксов имён классов.
  • Отмена привязки операций к классу.
  • Отмена параметра use_db_switch.

Опубликовать ( 0 )

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

1
https://api.gitlife.ru/oschina-mirror/weidong100-Wedo.git
git@api.gitlife.ru:oschina-mirror/weidong100-Wedo.git
oschina-mirror
weidong100-Wedo
weidong100-Wedo
master