V5.1.32 LTS (2018-12-24)
Основной целью данного обновления является устранение нескольких проблем, указанных пользователями.
- Улучшение метода
attach
для многим ко многим связей
- Улучшение обработки полей в агрегатных запросах
- Улучшение метода
save
для связей
- Исправление возвращаемого значения метода
exists
модели
- Улучшение записи и вывода временных полей
- Улучшение вызова промежуточного программного обеспечения контроллеров
- Улучшение производительности замены переменных маршрута
- Улучшение механизма обработки меток кэширования
V5.1.31 LTS (2018-12-9)
В этом выпуске включена безопасность обновление, рекомендуется обновиться.
- Улучшение метода
field
- Улучшение типа возвращаемого значения метода
count
- Добавление функции отображения файла в браузере в функции
download
- Исправление записи промежуточных таблиц для многим ко многим моделей
- Улучшение поддержки нескольких схем в драйвере
sqlsrv
- Унификация времени истечения для вспомогательных функций и функции
Download
класса \think\response
- Улучшение метода
save
для связей, добавление метода make
для создания объекта без сохранения
- Изменение поддержки статических переменных в условных выражениях
- Исправление получения имени контроллера
- Улучшение разбора полей в методе
view
## V5.1.30 LTS (2018-11-30)
Этот выпуск включает в себя улучшения и исправления нескольких проблем, указанных сообществом.
Основные улучшения:
- Улучшение метода
execute
класса запросов
- Добавление проверки типа запроса при определении маршрутов
- Исправление исключения
orderRaw
- Исправление команды
optimize:autoload
- Улучшение метода
destroy
для мягкого удаления, чтобы избежать повторного выполнения событий
- Улучшение класса валидации для расширенных правил валидации, всегда проверять, независимо от того, требуется ли это
- Исправление исключения при использовании метода
remove
для удаления всех правил валидации
- Улучшение поддержки записи микросекунд в временных полях
- Улучшение метода
getRealSql
класса Connection
- Исправление генерации URL для HTTPS
- Исправление проблемы с внутренним указателем при использовании
array_walk_recursive
в PHP ниже версии 7.1
- Улучшение использования ручной привязки параметров
- Улучшение поддержки параметра
field
в методах агрегатных запросов для выражений
V5.1.29 LTS (2018-11-11)Основной целью данного выпуска является улучшение анализа параметров привязки и повышение производительности, а также исправление нескольких проблем, указанных пользователями.
- Улучшение ручного привязывания параметров
- Исправление проблемы с недействительными групповыми параметрами в маршруте MISS
- Поддержка методов объектов поведения
- Исправление глобального диапазона запросов
- Улучшение метода
has
в связи с belongs_to
- Улучшение связи
has_many
- Улучшение проблемы повторной регистрации наблюдателей модели
- Улучшение обработки параметров по умолчанию в классе
query
- Исправление метода парсинга
parseBetween
- Улучшение поддержки локальных доменов в генерации маршрутов
- Улучшение производительности парсинга реального URL при привязке параметров
- Улучшение методов
getEnv
и get
в классе Env
- Улучшение оптимизации генерации кэша шаблонов
- Исправление поддержки многокультурности в классе валидации
- Исправление исключения правила
remove
в пользовательской сценарной валидации
- Добавление опции автоматического добавления расширения в класс
File
- Улучшение проверки наличия подстроки в методе
strpos
- Исправление проблемы выбора первого варианта в методе
choice
- Поддержка валидации многомерных массивов
- Улучшение парсинга тегов
extend
и block
регулярными выражениями
V5.1.28 LTS (2018-10-29)В этом выпуске были устранены некоторые проблемы предыдущего выпуска и улучшена поддержка связанных запросов.
- Улучшена поддержка полей DISTINCT в методах агрегирующих запросов
- Улучшена генерация портов в функции
url
после определения маршрута
- Улучшена поддержка
swoole
и других в middleware контроллеров
- Улучшена методом
save
класса Log
- Улучшена проверка параметров замыканий в классе валидации
- Поддержка указания названия промежуточной таблицы для связей многие-ко-многим
- Поддержка указания агрегирующих полей с помощью замыканий в агрегирующих запросах связей
- Улучшена методом
get
класса Lang
- Добавлен метод для проверки существования связанных данных в связях многие-ко-многим
- Улучшена работа с
fetchsql
в связанных запросах
- Улучшена проверка выполнения модификаторов
- Добавлены правила валидации
afterWith
и beforeWith
для сравнения датовых полей
V5.1.27 LTS (2018-10-22)
В этом выпуске были устранены проблемы с параметрами маршрутов, улучшена работа модификаторов при множественном выполнении и официально объявлен LTS.
- Устранена проблема с потерей параметров маршрутов
- Устранена проблема с получением параметров маршрутов-анонимов
- Улучшена работа модификаторов при множественном выполнении
V5.1.26 (2018-10-12)В этом выпуске были устранены некоторые проблемы предыдущего выпуска, улучшена поддержка глобальных диапазонов запросов и введена безопасная процедура обновления.* Устранена проблема с недействительностью аннотированных маршрутов в одном модуле
- Улучшена обработка полей в агрегирующих запросах базы данных
- В классе модели добавлен атрибут
globalScope
для указания глобальных диапазонов запросов
- Метод
useGlobalScope
модели поддерживает передачу массива для указания используемых глобальных диапазонов запросов
- Улучшена поддержка числовых типов в методе
order
набора данных
- Устранена проблема с анализом метода
order
предыдущего выпуска
- Выбрасывается исключение при неправильных или недействительных полях сортировки
- Улучшена проверка ошибок загрузки файлов в методе
file
класса Request
V5.1.25 (2018-09-21)В этом выпуске были улучшены производительность и поддержка чисел с плавающей запятой в параметрах запроса, а также улучшены некоторые детали.
- Исправлена проблема в командной строке
- Улучшена поддержка
Socketlog
-драйвера журналирования, позволяющая настраивать расширенные категории логов по умолчанию
- Исправлен баг в
MorphMany
- Переход к последнему запомненному URL и поддержка значений по умолчанию
- Улучшено сообщение об ошибках модели
- Улучшена поддержка параметров типа float в привязке параметров
- Улучшена обработка метода
order
- Улучшена автоматическая кодировка данных в поле
json
- Улучшена обработка метода
log_write
, чтобы избежать зацикливания при записи логов
- В класс
Log
добавлен метод log_level
для управления уровнем логирования
- В класс
Route
добавлен метод clear
для очистки маршрутов
- Поддержка массивов для конфигурации распределённых баз данных
- Одиночные файлы журнала поддерживают параметр
max_files
- Улучшена производительность привязки параметров запроса
- Улучшена проверка параметров суффиксов URL для маршрутов с псевдонимами
- Определения
only
и except
для методов до и после выполнения контроллера и для middleware контроллера не зависят от регистра символов
V5.1.24 (2018-9-5)В этом выпуске были добавлены функции таблицы для вывода в командной строке и инструкция для просмотра определений маршрутов, а также исправлены некоторые проблемы, связанные с обратной связью сообщества.
- Исправлен метод
file
класса Request
- Исправлен метод
cache
маршрута
- Исправлена проблема кэширования маршрута
- Улучшена обработка исключений при загрузке файлов
- Улучшен метод
fetchCollection
для поддержки передачи имени класса данных
- Исправлено создание маршрутов с аннотациями для многоуровневых контроллеров
- Улучшен метод
clear
класса Middleware
- Добавлена инструкция
route:list
для просмотра определённых маршрутов и поддержки сортировки
- В командной строке добавлен класс
Table
для вывода таблиц
- В класс
Command
добавлен метод table
для вывода таблиц
- Улучшены методы поиска для поддержки определения псевдонимов
- В конфигурацию командной строки добавлен параметр
auto_path
для определения пути автоматической загрузки классов команд
- Добавлена инструкция
make:command
для быстрого создания инструкций
- Улучшена инструкция
make:controller
для поддержки суффиксов методов действий
- Улучшена поддержка определённых файлов для командной строки для поддержки ленивой загрузки объектов команд
- Улучшены методы
value
и column
для влияния на последующие результаты запросов
- Улучшен метод
setRule
класса RuleName
## V5.1.23 (2018-08-23)
В этом выпуске были улучшены обработчики объектов данных, добавлен метод findOrEmpty
, а также исправлены некоторые ошибки, связанные с обратной связью сообщества.
- В класс данных добавлены методы
diff
/intersect
для получения разности и пересечения (по умолчанию сравнивается по первичному ключу)
- В класс данных добавлен метод
order
для сортировки по указанному полю
- В класс данных добавлен метод
map
для обработки данных с помощью обратного вызова и возврата нового объекта данных
- В класс
Db
добавлен метод allowEmpty
для разрешения возврата пустого массива или пустого объекта модели вместо null при отсутствии данных
- В класс
Db
добавлен метод findOrEmpty
- В класс
Db
добавлен метод fetchCollection
для возврата объекта данных по определенному запросу
- Улучшено парсинг массива метода
order
для повышения безопасности
- Улучшен метод
withSearch
для поддержки передачи третьего параметра для идентификации префикса полей, используемого для поиска полей в нескольких таблицах
- Исправлено создание маршрутов с аннотациями для инструкции
optimize:route
после включения суффиксов классов
- Исправлены кэши Redis и драйвер сессий
- Поддержка определения отдельного файла конфигурации для
Yaconf
- Добавлен вспомогательный функционал
yaconf
для конфигурации файлов## V5.1.22 (2018-08-09)
В этом выпуске были добавлены поисковые сущности модели и метод withJoin
, улучшены вывод модели и поддержка Yaconf
, а также исправлены некоторые ошибки, связанные с обратной связью сообщества.
- Улучшение определения
table
для однозначных связей один-к-одному
- Улучшение встроенных классов
Facade
- Добавление поддержки метода
withJoin
для запросов однозначных связей один-к-одному с использованием join
- Улучшение пустых данных в предварительной загрузке
join
- Улучшение метода
load
класса Config
для быстрой загрузки конфигурационных файлов
- Улучшение метода
execute
и повторного подключения при разрыве соединения в транзакциях
- Улучшение метода
has
драйвера memcache
- Поддержка определения методов поиска в классах моделей
- Улучшение поддержки
Yaconf
классом Config
- Улучшение методов
hidden/visible/append/withAttr
моделей для вызова до и после запроса, а также поддержка объектов набора данных
- Добавление метода
where
объектов набора данных для фильтрации данных по полям или связанным данным [фильтрация данных](набор данных модели.md)
- Улучшение обработки запросов AJAX для кода состояния
204
V5.1.21 (2018-08-02)
В этом выпуске были добавлены поддержка объектов ответа для загрузки и объектов запроса для массивов, а также исправлены некоторые проблемы, сообщенные сообществом.* Улучшена отладочная информация для вывода излишних данных для основных объектов
- Улучшена проверка метода
isRelationAttr
для моделей
- Методы
get
и all
модели объединены в класс Db
- Добавлены объекты ответа для загрузки и функция-помощник
download
- Исправлено чтение определений маршрутов с псевдонимами
- Улучшена функция
resultToModel
- Исправлено создание маршрутов с аннотациями после включения поддержки суффиксов классов
- В класс
Response
добавлен метод noCache
- Улучшена обработка объединения параметров для объектов маршрутов в
Swoole
/Workerman
- Исправлены проблемы с получением переменных маршрутов после параметров
ajax
/pjax
- Добавлен метод для очистки middleware
- Улучшена автоматическая идентификация параметров для внедрения зависимостей (для удобства интеграции с нижним подчеркиванием и нижним регистром в фронтенде)
- Улучшена проверка полей для массива условий в
hasWhere
- Добавлена поддержка объектов запроса для массивов для
Where
(радость для любителей запросов на основе массивов)
- Улучшена поддержка замыканий для многократных связей
V5.1.20 (2018-07-25)
В этом выпуске были добавлены поддержка динамических получателей для класса Db
и моделей, а также исправлены некоторые известные проблемы.* В класс Db
добавлена поддержка динамических получателей
- Добавлена поддержка динамических получателей для полей моделей и связанных моделей
- Добавлена поддержка
JSON
полей для динамических получателей
- Улучшена обработка поведения
before
для маршрутов (выполняется после соответствия)
- Класс
Config
поддерживает Yaconf
- Улучшена генерация URL с учетом порта
- В класс
Request
добавлены методы setUrl
и setBaseUrl
- Улучшена информация для отладки страницы trace
- Исправлена связь
MorphOne
- В командной строке добавлена команда для просмотра версии
V5.1.19 (2018-7-13)
В этом выпуске были сделаны небольшие улучшения, включая улучшение поддержки Cookie
для Swoole
и Workerman
, а также исправлены некоторые известные проблемы.
- Улучшена проверка условий для мягкого удаления в методе
delete
класса query
- Исправлены проблемы мягкого удаления при разбиении таблиц
- При запросе модели одновременно передаются параметры
table
и name
- Класс контейнера добавлены интерфейсы
IteratorAggregate
и Countable
- Поддержка групп маршрутов для установки параметров
only/except/vars
для всех ресурсов маршрутов
- Улучшена поддержка расширения класса
Cookie
- Улучшен метод
post
класса Request
- Улучшена автоматическая идентификация самосвязей модели
- Улучшена обработка данных из
php://input
классом Request
## V5.1.18 (2018-06-30)
В этом выпуске были улучшены поддержка HttpServer
для Swoole
и Workerman
, улучшен класс Request
, а также исправлены некоторые известные проблемы.
- Улучшение обработки метода
append
- Разделение инициализации и проверки маршрутов
- Исправление метода
destroy
для принудительного удаления
- Перемещение хука
app_init
в метод run
- Обновление расширения
think-swoole
до версии 2.0
- Обновление расширения
think-worker
до версии 2.0
- Улучшение автоматического определения домена при генерации URL
- Добавление методов
setPathinfo
и setHost
в класс Request
- Добавление методов
withGet
, withPost
, withHeader
, withServer
, withCookie
, withEnv
для присваивания значений в класс Request
- Улучшение получения свойства
host
в классе Route
- Решение проблемы, когда аннотированные маршруты не работают
- Отмена использования драйвера логирования
Test
, замена на использование close
для закрытия глобального логирования
- Исправление параметра
response
маршрута
- Исправление определения вывода ответа 204
V5.1.17 (2018-06-18)
В этом выпуске были добавлены возможности для работы с middleware контроллеров, улучшены функции маршрутизации и исправлены некоторые проблемы, сообщенные сообществом.* Исправление метода delete
для мягкого удаления
-
Исправление метода Count
класса Query
-
Улучшение метода detach
для отношения многие ко многим
-
Улучшение метода Session
класса Request
-
Добавление поддержки middleware для контроллеров
-
Добавление свойства jsonAssoc
в класс модели для определения возвращения данных JSON в виде массива
-
Исправление метода method
класса Request
для маскировки запроса
-
Улучшение соответствия статических маршрутов
-
Автоматическое полное соответствие маршрутов для главной страницы групп
-
Улучшение метода column
класса sqlsrv
-
Поддержка конфигурации apart_level
класса логирования для автоматического создания соответствующих файлов логирования
-
Улучшение определения вывода ответа 204
-
Исправление ошибки вывода страницы в режиме CLI
-
Использование более эффективного механизма проверки ctype
в классе валидации
-
Улучшение метода cookie
класса Request
-
Исправление метода withTrashed
для мягкого удаления
-
Улучшение предварительной загрузки запросов для отношения много к одному с полиморфизмом
-
Улучшение чтения кэша метода column
класса Query
-
Добавление метода whereBetweenTimeField
класса Query
-
Улучшение соответствия нескольких маршрутов с одинаковым правилом в группе
-
Добавление методов getRule
и getRuleList
класса Route
для получения определенных маршрутов## V5.1.16 (2018-06-07)В этом выпуске были исправлены некоторые проблемы, сообщенные сообществом, а также проведена дальнейшая стандартизация и оптимизация класса Request
.
-
Улучшение метода boot
класса Session
-
Метод инициализации класса App можно выполнить отдельно
-
Улучшение метода param
класса Request
-
Улучшение замены переменных в маршрутах ресурсов
-
Класс Request добавляет метод __isset
-
Улучшение метода useGlobalScope
влияния на мягкое удаление
-
Исправление вызова командной строки
-
Улучшение метода init
класса Cookie
-
Улучшение возвращаемого значения при удалении многим ко многому
-
Поддержка метода replace
для записи одного ко многому
-
Добавление метода filter
для маршрутов, используемого для проверки соответствия маршрута по параметрам запроса
-
Отмена параметра filter
в методах session/env/server
класса Request
-
Улучшение вывода определенных свойств в связях
-
При удалении модели данные не очищаются, а только помечаются
-
Изменение возвращаемого значения метода save
модели на булево
-
Исправление метода isAjax
класса Request
-
Исправление чтения конфигурации модуля в middleware
-
Отмена функции установки переменных запроса в классе Request
-
Отмена стандартного модификатора для получения переменных запроса
-
Класс Request добавляет методы setAction/setModule/setController
-
Метод delete
связанной модели вызывает класс Query
-
Улучшение определения домена при генерации URL* Улучшение проверки домена при проверке URL для определенных маршрутов
-
Класс модели добавляет методы isExists
и isForce
-
Возвращаемое значение методов destroy
и restore
мягкого удаления изменено на булевое
V5.1.15 (2018-6-1)В этом выпуске были улучшены производительность и методы настройки кэширования маршрутов, добавлена поддержка логирования в формате JSON и исправлены некоторые проблемы, сообщенные сообществом.* В класс контейнера добавлен метод exists
, который проверяет только наличие экземпляра объекта.
- Удален метод
autoload
из класса конфигурации.
- Улучшена производительность за счет увеличения размера кэширования маршрутов.
- Улучшен метод
init
класса Dispatch.
- Добавлено командное выражение
make:validate
для создания классов валидации.
- Метод
get
класса Config теперь поддерживает параметр по умолчанию.
- Исправлены команды кэширования полей.
- Улучшена работа класса App при возврате данных
null
.
- Улучшен метод
__isset
класса модели.
- Исправлен метод
withAggregate
класса Query.
- Улучшен метод
setRuleName
класса RuleItem.
- Исправлены конфликты при внедрении зависимостей и параметров.
- Исправлена поддержка сторонних драйверов в классе Db.
- Исправлены проблемы с запросами объектов в классе модели.
- Исправлен метод
has
драйвера кэширования File.
- Исправлены проблемы с вложенным маршрутизацией ресурсов.
- Улучшена работа класса Request при чтении переменной
$_SERVER
.
- Улучшена обработка кэширования запросов.
- Поддержка кэширования маршрутов с настройкой отдельных методов и параметров кэширования.
- Исправлены проблемы повторного выполнения middleware для маршрутизации ресурсов.
- Исправлено командное выражение
optimize:config
.
- Поддержка логирования в формате JSON.
- Исправлен метод
connect
класса Db.
- Улучшен метод
write
класса Log, который не записывает предыдущие логи автоматически.* По умолчанию включена транзакция для связанных действий модели.
- Улучшена реакция на события мягкого удаления.## V5.1.14 (2018-05-18)
В этом выпуске были проведены оптимизации и улучшения в базовом контейнере, а также добавлена поддержка кэширования маршрутов для повышения производительности маршрутизации.
- Улучшена передача параметров объектов при внедрении зависимостей.
- Улучшено создание экземпляров контейнера в ключевых классах.
- Улучшено чтение полей дат.
- Улучшен метод
getScene
класса валидации.
- Методы
create
и save
класса модели теперь поддерживают операцию replace
.
- Улучшена структура вызова класса Db.
- Класс App теперь является классом контейнера.
- Улучшены стандартные привязки контейнера.
- В класс Loader добавлен метод для создания экземпляров фабрик.
- Добавлены параметры конфигурации по умолчанию для маршрутизации переменных.
- Добавлена концепция кэширования маршрутов.
- Улучшена система обработки ошибок.
- Добавлена команда для очистки кэширования маршрутов.
V5.1.13 (2018-05-11)В этом выпуске были добавлены поддержка XA транзакций для MySQL, поддержка наблюдателей для событий модели и улучшена работа класса Facade.
- Улучшение автоматического кэширования
- Улучшение генерации URL
- Исправление кэширования данных
- Исправление кэширования метода
value
- Поддержка условий в методах
join
и view
с использованием объекта Expression
- Улучшение метода
parseKey
в драйвере
- Улучшение методов
host
и domain
класса Request
для обработки портов
- Добавление метода
withEvent
в модель для управления выполнением событий модели
- Поддержка событий обновления в методах
setInc
и setDec
модели
- Добавление событий
before_restore
и after_restore
в модель
- Добавление наблюдателей для событий модели
- Добавление метода
mobile
в маршруты для управления разрешением доступа с мобильных устройств
- Поддержка транзакций XA в базе данных
- Улучшение поддержки запросов
IN
для массивов индексов
- Исправление метода
invokeMethod
- Исправление ошибки возврата пустых данных при записи
- Поддержка драйвера
predis
для Redis
- Улучшение метода
parseData
- Улучшение загрузки модулей
- Изменение метода инициализации класса
App
- Улучшение поддержки выражений
Expression
в запросах массивов
- Улучшение вызова зависимостей в замыканиях
- Улучшение обновления промежуточной модели в связях многие-ко-многим
- Добавление возможности пользовательской инициализации объектов в контейнере
V5.1.12 (2018-4-25)В этом выпуске были улучшены операции с главным и второстепенным запросами, а также добавлена поддержка динамического задания параметров запроса.
- Добавлена поддержка динамического задания параметров запроса
- Улучшена обработка метода
comment
- Исправлена ошибка в методе
__unset
класса App
- Улучшена привязка домена при генерации URL
- Улучшены операции с главным и второстепенным запросами
- Исправлена ошибка в методе кэширования данных
value
- Улучшены методы работы с коллекциями в классе пагинации
- Улучшены подсказки кода в классе
Db
- В лог SQL добавлены метки для главного и второстепенного запросов
V5.1.11 (2018-04-19)
Этот выпуск направлен на повышение безопасности и исправление ошибок, улучшены параметры привязки JSON-запросов и методы работы с контейнерными объектами, а также включает потенциальную уязвимость безопасности, рекомендуется обновление.
- Добавлена поддержка типов полей для запросов JSON
- Исправлен метод
selectInsert
- Метод
whereColumn
поддерживает массивы
- Улучшен метод
make
в контейнерных классах
- Метод
delete
в контейнерных классах поддерживает массивы
- Улучшена автоматическая загрузка
composer
- Улучшен движок шаблонов
- Исправлена уязвимость безопасности в методе
like
запроса
V5.1.10 (2018-04-16)
Этот выпуск направлен на исправление ошибок, исправлены некоторые ошибки предыдущего выпуска, а также улучшена команда think clear
.* Улучшен метод orderField
- Улучшен метод
exists
запроса
- Изменено местоположение файла входа в режиме CLI
- Исправлен метод
null
запроса
- Улучшен метод
parseTime
- Исправлен метод предварительной загрузки связанных запросов
- Улучшен драйвер
mysql
- Улучшена команда
think clear
с поддержкой опций -c
, -l
, -r
- Улучшена поддержка маршрутизации для URL с окончанием
/
V5.1.9 (2018-04-12)
Этот выпуск включает улучшения и исправления, а также безопасное обновление, рекомендуется обновление.
- Добавлена поддержка конфигурации для сохранения имени метода при рендеринге шаблонов по умолчанию
- Улучшен метод
ip
класса Request
- Добавлена поддержка определения значений по умолчанию для полей мягкого удаления в моделях
- Улучшена поддержка кириллицы в правилах маршрутизации
- При использовании замыканий для запросов добавлено исключение при использовании
cache(true)
- Улучшен метод
loadComposerAutoloadFiles
класса Loader
- Улучшена безопасность методов запроса
- Исправлена проблема с названием контроллера в маршрутах
- Исправлен порядок выполнения хуков
module_init
и app_begin
предыдущего выпуска
- Улучшена работа командной строки CLI
- Исправлены другие проблемы, сообщенные сообществом
V5.1.8 (2018-04-05)В этом выпуске были улучшены поддержка доменов и модулей в middleware, а также исправлены несколько известных проблем. Добавлен параметр template.auto_rule
для настройки правил автоматического преобразования по умолчанию для шаблонов. По умолчанию правила рендеринга шаблонов реализуются с помощью вью-компонентов. Исправлена определенная маршрутизация. Исправлен метод маршрутизации контроллера. Улучшена поддержка пользовательских параметров прокси-IP в методе ip
класса Request
. Поддержка массивного алиаса для промежуточного программного обеспечения при регистрации маршрутов. Улучшена автоматическая загрузка composer
при выполнении командной строки. Добавлена поддержка промежуточного программного обеспечения для доменных имен. Поддержка глобального промежуточного программного обеспечения с использованием файлов определения модулей. Конфигурация логирования поддерживает параметр close
, который позволяет глобально отключить запись логов. Промежуточное программное обеспечение методы поддерживают перехват исключений HttpResponseException
. Улучшена передача параметров замыкания в промежуточном программном обеспечении. Улучшена отложенная обработка групп маршрутов. Улучшена поддержка доменных имен при генерации URL. Улучшена поддержка конкурентного доступа для кэширования файлов и драйверов логирования файлов.
V5.1.7 (2018-3-28)В этом выпуске были исправлены некоторые проблемы с маршрутизацией и улучшена безопасность запросов.
- Поддержка конфигурационного файла
middleware
для предварительного определения псевдонимов middleware для удобства вызова в маршрутах
- Исправление маршрутизации ресурсов
- Улучшение метода
field
для автоматического распознавания fieldRaw
- Добавлен класс
Expression
- Добавлен метод
raw
в класс Query
- Методы
field
, order
и where
класса Query
теперь поддерживают использование raw
выражений для запросов
- Улучшение методов
inc/dec
запросов для поддержки массового обновления
- Улучшение группировки маршрутов
- Улучшение метода
create
класса Response
- Улучшение автоматической загрузки через composer
- Исправление метода
append
для маршрутизации доменов
- Исправление проблемы с получением методов инициализации действий
V5.1.6 (2018-03-26)В этом выпуске были улучшены алгоритмы маршрутизации, что значительно повысило производительность маршрутизации. Также введена поддержка middleware, которая может быть определена в маршрутах или глобально. Включает в себя безопасное обновление, рекомендуемое для применения.
- Улучшение поддержки метода
ext
маршрутизации для генерации URL
- Улучшение поддержки кэширования запросов для однородных таблиц в разных базах данных
- Улучшение производительности автоматической загрузки Composer
- Улучшение влияния пустых переменных маршрутизации на параметры по умолчанию
- Поддержка многоуровневого запроса для поля
json
в MySQL
- Добавление метода
option
в класс Query
- Оптимизация соответствия маршрутизации
- Исправление проблемы утери ключей-чисел в правилах валидации
- Улучшение генерации URL маршрутизации
- Улучшение предварительной загрузки однородных связей один-к-одному
- Добавление метода
rootDomain
в класс Request
- Поддержка генерации контроллеров API-ресурсов командой
make:controller --api
- Оптимизация разбора меток в классе Template
- Добавление методов удаления и очистки экземпляров объектов в классе контейнера
- Исправление ошибки в методе
eagerlyMorphToMany
связи MorphMany
- Улучшение пойманного исключения в классе Container
- Поддержка метода
bind
в объекте Domain
- Исправление параметров пагинации
- Правила вывода по умолчанию не зависят от URL* Поддержка многоуровневых контроллеров в маршрутах с аннотациями
- Добавление метода
getNumRows
в класс Query для получения количества строк, затронутых последним запросом
- Улучшение производительности условий запроса
- Улучшение обработки сериализованных типов в методе
readTransform
класса модели
- Добавление метода
close
в класс Log для временного отключения записи логов для текущего запроса
- Добавление автоматической очистки файловых логов (установка параметра
max_files
)
- Исправление метода
getPk
класса Query
- Исправление проблемы переключения макетов в кэшированных шаблонах
- Исправление кэширования метода
select
класса Query
- Улучшение функции-помощника input
- Улучшение определения информации о повторном подключении при разрыве соединения
- Улучшение метода регулярного выражения для валидации
- Изменение порядка загрузки пакетов языка, чтобы он происходил до
app_init
- Изменение метода
fetch
класса контроллера на final
- Поддержка использования переменных в маршрутах в формате
<var>
- Улучшение поддержки XMLResponse для передачи закодированного XML-контента
- Исправление метода
view
класса Query для поддержки массивов имен таблиц
- Улучшение привязки модели-замыкания в маршрутах
- Улучшение наследования правил групповых переменных
- Улучшение автоматической загрузки Composer в режиме
cli-server
- Поддержка пойманного исключения правил переменных маршрутизации* Введение поддержки промежуточных компонентов
- Добавление метода
middleware
в определение маршрутов
- Добавление команды
make:middleware
для создания промежуточных компонентов
- Поддержка глобальных промежуточных компонентов
- Улучшение команды
optimize:config
для поддержки глобальных промежуточных компонентов
- Улучшение метода
has
класса конфигурации
- Улучшение привязки параметров для запросов времени
- Улучшение безопасности запросов
inc/dec/exp
V5.1.5 (2018-01-31)В этом выпуске были улучшены JSON-запросы к базе данных и поддержка агрегатных запросов к JSON-полю. Также были улучшены некоторые вопросы производительности и исправлены ошибки маршрутизации. Основные изменения включают:* Улучшение поддержки запросов к JSON
-данным
- Улучшение поддержки агрегатных запросов к
JSON
-полю
- Добавление метода
getOrFail
в класс модели
- Улучшение метода
parseKey
в драйвере базы данных
- Улучшение метода
join
класса Query
для самосоединений
- Улучшение отсутствия генерации кэша запросов при отсутствии данных
- Добавление командной строки
run
для запуска встроенных серверов
- Улучшение метода
pathinfo
класса Request
для поддержки cli-server
- Добавление параметра конфигурации
use_lock
в класс Session
для управления блокировками
- Улучшение проблемы создания пустых директорий при кэшировании файлов
- Поддержка метода
append
для маршрутизации доменов и групп для передачи неявных параметров
- Улучшение параллельного записи в логи
- Улучшение метода
where
класса Query
для поддержки передачи объекта Query
- Поддержка установки имени файла для отдельного лог-файла
- Исправление условий маршрутизации доменов
- Добавление метода
subDomain
класса Request
для получения текущего поддомена
- Добавление метода
allowCache
класса Response
для управления кэшированием запросов
- Добавление метода
sendData
класса Request
для расширения
- Улучшение класса
Env
для независимости от метода putenv
- Улучшение отображения ошибок в консоли с помощью
trace
- Улучшение
MorphTo
связей
- Улучшение доступа к маршрутам с использованием слеша после полной маршрутизации* Улучшение многоуровневой группировки маршрутов
- Поддержка многоуровневой группировки URL-адресов маршрутов
- Улучшение влияния параметра
url_convert
на генерацию URL-адресов
- Улучшение внутреннего анализа маршрутов
miss
и auto
- Отмена функции предварительного кэширования запросов к связанным данным## V5.1.4 (2018-1-19)
В этом выпуске были улучшены база данных и операции с моделями. Основные изменения включают:
- Поддержка установки свойства
deleteTime
в false
для отключения мягкого удаления
- Добавление метода
getError
в класс модели
- Улучшение методов
getTableFields
и getFieldsType
класса Query
для автоматического получения имени таблицы
- Добавление параметра для указания класса данных в методе
toCollection
класса модели
- Улучшение объединения запросов
- Добавление параметра кэширования в метод
with
для предварительной загрузки связей
- Улучшение кэширования методов
get
и all
класса модели для поддержки кэширования связей
- Поддержка операции
order by field
- Улучшение метода
insertAll
для разбивки на части
- Улучшение поддержки
json
-полей
- Добавление операций с объектами модели для
json
-данных
- Улучшение проверки параметра
ext
маршрута
- Исправление проблемы регистрации маршрутов с использованием метода
rule
и параметра method
V5.1.3 (2018-1-12)
Этот выпуск включает в себя улучшения маршрутизации и изменения порядка загрузки функций, основные обновления следующие:* Добавлено вспомогательное функциональное поле env
;
- Добавлено вспомогательное функциональное поле
route
;
- Добавлены методы маршрутизации представлений;
- Добавлены методы перенаправления маршрутов;
- Маршруты по умолчанию различают последний слэш каталога (поддерживается настройка для отключения);
- Изменен порядок загрузки общих файлов и конфигурационных файлов (можно использовать вспомогательные функции непосредственно в конфигурационных файлах);
- В класс представлений добавлен метод
filter
для установки фильтрации вывода;
- Вспомогательное поле
view
добавлено параметр filter
;
- Улучшены команды генерации кэша;
- В классе
Session
метод get
поддерживает получение нескольких уровней;
- В классе
Request
метод only
поддерживает установку значений по умолчанию;
- Улучшены группы маршрутов;
- Исправлены ошибки кэширования данных при использовании замыканий;
- Удалены вспомогательные функции
view_filter
;
- Исправлены маршруты ресурсов в группах;
- Улучшены драйверы сессий;## V5.1.2 (8 января 2018)
Этот выпуск включает улучшения класса конфигурации и класса базы данных, основные обновления следующие:
- Исправлены вложенные группы маршрутов;
- Исправлены ошибки синтаксиса выражений после пользовательских тегов шаблонов;
- Исправлены ошибки повторного использования самосвязей;
- Исправлены ошибки запросов массивов с условием
null
;
- Исправлены возможные ошибки в классе
Query
методах order
и field
;
- Поддержка трёхуровневых параметров конфигурации;
- Объекты конфигурации поддерживают интерфейс
ArrayAccess
;
- В классе
App
добавлен метод path
для установки каталога приложения;
- В определениях связей добавлен метод
selfRelation
для установки самосвязей;
V5.1.1 (3 января 2018)
Исправлены некоторые ошибки, включая:
- Исправлены ошибки работы с массивами в классе
Cookie
;
- Исправлены ошибки метода
fetch
в классе Controller
;
- Улучшены запросы с учетом ошибок.* Добавлено вспомогательное функциональное поле
env
;
- Добавлено вспомогательное функциональное поле
route
;
- Добавлены методы маршрутизации представлений;
- Добавлены методы перенаправления маршрутов;
- Маршруты по умолчанию различают последний слэш каталога (поддерживается настройка для отключения);
- Изменен порядок загрузки общих файлов и конфигурационных файлов (можно использовать вспомогательные функции непосредственно в конфигурационных файлах);
- В класс представлений добавлен метод
filter
для установки фильтрации вывода;
- Вспомогательное поле
view
добавлено параметр filter
;
- Улучшены команды генерации кэша;
- В классе
Session
метод get
поддерживает получение нескольких уровней;
- В классе
Request
метод only
поддерживает установку значений по умолчанию;
- Улучшены группы маршрутов;
- Исправлены ошибки кэширования данных при использовании замыканий;
- Удалены вспомогательные функции
view_filter
;
- Исправлены маршруты ресурсов в группах;
- Улучшены драйверы сессий;## V5.1.2 (8 января 2018)
Этот выпуск включает улучшения класса конфигурации и класса базы данных. Основные обновления следующие:
- Исправлены вложенные группы маршрутов;
- Исправлены ошибки синтаксиса выражений после пользовательских тегов шаблонов;
- Исправлены ошибки повторного использования самосвязей;
- Исправлены ошибки запросов массивов с условием
null
;
- Исправлены возможные ошибки в классе
Query
методах order
и field
;
- Поддержка трёхуровневых параметров конфигурации;
- Объекты конфигурации поддерживают интерфейс
ArrayAccess
;
- В классе
App
добавлен метод path
для установки каталога приложения;
- В определениях связей добавлен метод
selfRelation
для установки самосвязей;
V5.1.1 (3 января 2018)
Исправлены некоторые ошибки, включая:
- Исправлены ошибки работы с массивами в классе
Cookie
;
- Исправлены ошибки метода
fetch
в классе Controller
;
- Улучшены запросы с кросс-доменной областью видимости;
- Исправлены ошибки метода
insertAll
;
- Исправлены ошибки метода
chunk
;
V5.1.0 (1 января 2018)
Основные обновления следующие:
---Надеюсь, что этот перевод соответствует требованиям. Если есть какие-либо места, которые нужно скорректировать, дайте знать.
- Добавлена поддержка аннотаций для маршрутов
- Добавлена поддержка кросс-доменных запросов для маршрутов
- Добавлен
app_dispatch
хук
- Исправлен метод
detach
для много-ко-многим связям
- Исправлен метод
destroy
для мягкого удаления
- По умолчанию параметр
httponly
класса Cookie
установлен в false
- Добавлен параметр
single
для драйвера логирования File для записи в один и тот же файл (без разделения по дате)
- Добавлена поддержка методов
ext
и denyExt
для маршрутов без передачи параметров
- Улучшена поддержка
oracle
в методе save
модели
- Добавлена поддержка методов
data
и limit
для метода insertall
класса Query
- Добавлена поддержка динамического поиска с использованием
whereOr
- Улучшена запись IP-адресов в логах
- Добавлена поддержка метода
isUpdate
для метода saveAll
модели
- Улучшена инициализация объектов класса
Pivot
- Улучшен метод
data
класса Model
- Улучшен класс модели для много-ко-многим связям
- Добавлен метод
force
для модели для принудительного обновления всех данных
- Добавлена поддержка установки имени входного метода для класса
Hook
- Улучшен класс валидации
- Исправлены проблемы с повторяющимися данными в методе
hasWhere
- Метод
saveall
модели возвращает объект данных
- Улучшен метод
clear
для кэша типа File
- Добавлена унифицированная сериализация для кэша
- Улучшена поддержка поддоменов* Улучшена передача и получение значений для поддоменов
- Добавлен метод
panDomain
класса Request
- Улучшена проверка устаревших полей
- Добавлен метод
create
класса App
для инициализации приложения
- Добавлен метод
has
для контейнера
- Улучшена поддержка переключения между несколькими базами данных
- Улучшена обработка исключений при повторном подключении
- Улучшен метод
buildQuery
класса модели
- Добавлен метод
unionAll
класса Query
- Улучшена поддержка агрегатных функций (Sum/Max/Min/Avg) для связей
- Исправлен метод отложенного ввода
- Метод
chunk
поддерживает составные первичные ключи
- Улучшена запись типа данных JSON
- Улучшен метод
insertAll
для MySQL
- Улучшен метод
save
модели для составных первичных ключей с автоинкрементом
- Улучшены методы
inc
и dec
класса Query
для обработки ключевых слов
- Методы
inc
и dec
кэша типа File сохраняют срок действия
- Улучшена проверка срока действия кэша Redis
- Добавлен метод
checkRule
для проверки нескольких правил валидации для отдельных данных
- Исправлен метод
setDec
для отложенного ввода
- Методы
max
и min
добавлен параметр force
- Вторичные параметры конфигурации учитывают регистр
- Улучшен метод
join
для самосоединений
- Исправлены проблемы с пользовательскими именами таблиц для связанных моделей
- Добавлены методы
getFieldsType
и getTableFields
класса Query
- Удалена функция замены представлений и параметр конфигурации
view_replace_str
* Улучшена маршрутизация после модуля привязки доменов
- Улучшен метод
insertAll
для Mysql
- Улучшен метод
insertAll
для записи данных типа JSON
- Улучшен метод
insertAll
для redis с несколькими базами данных
Версия RC3 (2017-11-6)Основные обновления:* Улучшение метода get
в драйвере Redis
- Исправление метода
alias
в классе Query
- Поддержка многоязычности в сообщениях об ошибках класса
File
- Исправление парсинга дополнительных параметров в маршрутах
- Улучшение метода
whereTime
- Улучшение метода
getAttr
в классе Model
- Улучшение методов
controller
и validate
в классе App для поддержки многоуровневых структур
- Улучшение класса
HasManyThrough
- Исправление метода
restore
для мягкого удаления
- Улучшение связей типа
MorphTo
- Улучшение метода
parseKey
в классах драйверов баз данных
- Добавление метода динамического поиска
whereField
- Добавление функции отмеченных как устаревших полей в модели
- Улучшение проверки поведения
after
и механизма before
в маршрутах
- Улучшение проверки групп маршрутов
- Исправление поиска полей типа
json
в MySQL
- Отмена метода
quote
в классе Connection
- Улучшение поддержки командной строки
- Поддержка многоязычности в сообщениях о валидации
- Исправление привязки моделей маршрутов
- Улучшение поддержки типов перечислений в привязке параметров
- Исправление вывода
{$Think. version}
в шаблонах
- Улучшение парсинга функции
date
в шаблонах
- Улучшение метода
insertAll
для поддержки выполнения по частям
- Поддержка метода
host
в классе Request для обратного проксирования
- Улучшение класса
JumpResponse
для поддержки различия между шаблонами успеха и ошибки* Улучшение автоматического определения внешних ключей после включения библиотек с определенными суффиксами
- Исправление предварительной загрузки запросов с присоединением по одному к одному для метода JOIN
- Добавление метода
hidden
в классе Query
- Исправление запросов в представлении
- Исправление маршрутизации ресурсов
- Исправление ассоциации
HasMany
и запросов в блоке where
- После привязки атрибута один-к-одному к родительской модели атрибут ассоциации больше не сохраняется
- Исправление чтения конфигурационного файла командной строки приложения
- Улучшение метода
getCacheKey
класса Connection
- Улучшение обработки исключений неправильного изображения при загрузке файлов
- Улучшение правила
unique
класса валидации
- Поддержка получения первичной конфигурации методом
get
класса Config
- Исправление поддержки метода
count
для fetchSql
- Исправление поддержки
socket
в драйвере mysql
- Улучшение метода
getRealSql
класса Connection
- Исправление вспомогательной функции
view
- Добавление методов
leftJoin
, rightJoin
и fullJoin
класса Query
- Улучшение получения
app_namespace
- Улучшение метода
append
для поддержки привязки атрибута один-к-одному
- Улучшение возвращаемого значения метода
saveall
ассоциации
- Исправление исключений установки метки маршрута
- Улучшение метода
rule
класса Route
- Улучшение установки свойства
table
модели
- Улучшение порядка загрузки
composer autofile
* Улучшение поддержки замыканий конфигурации exception_handle
- Улучшение вспомогательной функции
app
с добавлением параметров
- Улучшение проверки пути загрузки
composer
- Исправление генерации URL для маршрутизации объединенных переменных
- Исправление генерации URL маршрутизации
- Улучшение запроса
whereTime
и поддержка расширяемых правил
- Поддержка
false
вторым параметром метода move
класса File
- Улучшение класса
Config
- Улучшение метода
remember
класса кэширования
- Изменение конфигурационного файла соглашений, URL-класс не кодирует параметры в
urlencode
при обычном режиме
- Отмена определения констант
ROOT_PATH
и APP_PATH
, для изменения пути приложения переопределяйте файл входа
- Добавление получения
app_debug
через Env
- Исправление привязки домена
- Улучшение механизма анализа выражений запросов
- Добавление выражения
regexp
в драйвер mysql
для поддержки регулярных выражений
- Улучшение обработки исключений выражений запросов
- Улучшение метода
destroy
класса модели
- Улучшение класса
Builder
, отмена метода parseValue
- Исправление проблемы привязки параметров для запроса
like
- Перемещение файлов
console
и start
из ядра в библиотеку приложения
- Улучшение метода удаления первичного ключа класса
Db
- Улучшение модуля привязки домена
- Отмена константы
BIND_MODULE
, замена на использование метода bind
в файле входа
- Улучшение запросов массивов* Улучшение обработки исключений при рендеринге шаблонов
- Улучшение параметров метода архитектуры базового класса контроллера
- Улучшение методов
success
и error
класса Controller
- Улучшение поддержки плагина
JSON-Handle
браузера
- Оптимизация отображения шаблонов перенаправления для мобильных устройств
- Исправление метода
chunk
запроса модели для поддержки временных полей
- Улучшение драйвера
trace
- Добавление метода
push
класса Collection
- Улучшение драйвера Redis сессий
- Добавление драйвера
JumpResponse
RC1 (2017-9-8)Основные новые возможности включают:
- Введение поддержки контейнеров и Facade
- Улучшение и расширение поддержки внедрения зависимостей для различных сценариев
- Переработанный (объектный) маршрутизатор
- Отделение конфигурации и маршрутизации в отдельные директории
- Отмена системных констант
- Улучшение вспомогательных функций
- Введение механизма псевдонимов для библиотек классов
- Улучшение моделей и работы с базой данных
- Улучшение классов валидации
- Улучшение шаблонных движков
- Поддержка PSR-3 для логирования
- В версии RC1 отменена возможность массового поиска по полям в массивах для версии 5.0
Опубликовать ( 0 )