Примечания к выпуску Django 1.7.2 ¶
2 января 2015 г.
Django 1.7.2 исправляет несколько ошибок в 1.7.1.
Кроме того, поставленная Django версия из шести django.utils.six
была обновлена до последней версии (1.9.0).
Исправления ¶
- Исправлено переименование автоматически созданных таблиц "многие ко многим" при миграции при миграции
Meta.db_table
( # 23630 ). - Исправлен сбой миграции при добавлении явного
id
поля в модель на SQLite ( # 23702 ). - Добавлено предупреждение о повторяющихся моделях при перезагрузке модуля. Раньше
RuntimeError
возникала ошибка каждый раз, когда две модели конфликтовали в реестре приложений. ( # 23621 ). - Запрещена
flush
загрузка исходных данных для перенесенных приложений ( # 23699 ). - Исправлена
makemessages
регрессия в 1.7.1STATIC_ROOT
соNone
значением по умолчанию ( # 23717 ). - Добавлена совместимость GeoDjango с драйвером базы данных mysqlclient.
- Исправлен сбой MySQL 5.6+ с
GeometryField
s в миграциях ( # 23719 ). - Исправлен сбой миграции при удалении поля, на которое есть ссылка в
AlterIndexTogether
илиAlterUniqueTogether
( # 23614 ). - Обновлен первый день недели в украинской локали на понедельник.
- Добавлена поддержка транзакционной инициализации пространственных метаданных в SpatiaLite 4.1+ ( # 23152 ).
- Исправлен сбой миграции, который не позволял изменить поле, допускающее значение NULL, по умолчанию на значение, не допускающее значения NULL, с тем же значением по умолчанию ( # 23738 ).
- Исправлен сбой миграции при добавлении
GeometryField
sblank=True
в PostGIS ( # 23731 ). - Разрешено использование
DateTimeField()
asTransform.output_field
( # 23420 ). - Исправлена ошибка сериализации миграции с участием
float("nan")
иfloat("inf")
( # 23770 ). - Исправлена регрессия, при которой настраиваемые поля формы, имеющие
queryset
атрибут, но неlimit_choices_to
могли использоваться вModelForm
( # 23795 ). - Исправлена ошибка проверки типа настраиваемого поля с MySQL бэкэндом , когда
db_type
вернулсяNone
( # 23761 ). - Исправлен сбой миграции при переименовании поля, которое является частью
index_together
( # 23859 ). - Исправлено
squashmigrations
с учетом--no-optimize
параметра ( # 23799 ). - Сделано
RenameModel
двусторонним ( # 22248 ) - Избегали ненужных откатов миграции из других приложений при обратной миграции ( # 23410 ).
- Исправлена редкая ошибка запроса при использовании глубоко вложенных подзапросов ( # 23605 ).
- Исправлен сбой при миграции при удалении поля, являющегося частью
index/unique_together
ограничения ( # 23794 ). - Исправлено,
django.core.files.File.__repr__()
когда файлname
содержит символы Unicode ( # 23888 ). - Добавлен отсутствующий контекст для представления администратора,
delete_selected
который препятствовал появлению настраиваемого заголовка сайта и т. Д. ( # 23898 ). - Исправлена регрессия с динамически генерируемыми встроенными строками и разрешенными ссылками на поля в админке ( # 23754 ).
- Исправлена ошибка бесконечного цикла для определенных зависимостей циклической миграции, а сообщение об ошибке для циклических зависимостей стало более полезным.
- Добавлена недостающая
index_together
обработка для SQLite ( # 23880 ). - Исправлен сбой, когда
RunSQL
содержимое SQL собиралось редактором схемы, обычно при использованииsqlmigrate
( # 23909 ). - Исправлена регрессия в представлениях
contrib.admin
добавления / изменения, из-за которой некоторыеModelAdmin
методы получали неверноеobj
значение ( # 23934 ). - Исправлен
runserver
сбой, когда сообщение об ошибке сокета содержало символы Unicode ( # 23946 ). - Исправлена сериализация
type
при добавленииdeconstruct()
метода ( # 23950 ). - Запрещено
django.contrib.auth.middleware.SessionAuthenticationMiddleware
устанавливать заголовок для всех ответов ( # 23939 )."Vary: Cookie"
- Исправлен сбой при добавлении
blank=True
вTextField()
MySQL ( # 23920 ). - Исправлено создание индекса инфраструктурой миграции, особенно при работе с
{text|varchar}_pattern_ops
индексами, специфичными для PostgreSQL ( # 23954 ). - Исправлена ошибка, из-за
makemigrations
которой создавались поврежденные файлы миграции при работе с наследованием нескольких таблиц и наследованием от более чем одной модели ( # 23956 ). - Исправлен сбой при наличии
MultiValueField
неверных данных ( # 23674 ). - Исправлен сбой в админке при использовании «Сохранить как новый», а также при удалении связанной строки ( # 23857 ).
- Всегда конвертируется
related_name
в текст (Unicode), так как это требуется в Python 3 для интерполяции. Удалено преобразованиеrelated_name
в текст при деконструкции миграции ( # 23455 и # 23982 ). - Увеличены размеры табличных пространств, которые создаются по умолчанию для тестирования в Oracle (основное табличное пространство было увеличено с 200 до 300 МБ, а временное табличное пространство с 100 до 150 МБ). Это было необходимо для обеспечения роста собственного набора тестов Django ( # 23969 ).
- Исправлен
timesince
перевод фильтра на корейский ( # 23989 ). - Исправлен SQLite
SchemaEditor
для правильного добавления значений по умолчанию при отсутствии указанного пользователяdefault
. Например, операторCharField
withblank=True
не установил для существующих строк пустую строку, что привело к сбою при добавлении ограничения ( # 23987 ).NOT NULL
makemigrations
больше не запрашивает значение по умолчанию при добавленииTextField()
илиCharField()
безdefault
( # 23405 ).- Исправлен сбой миграции при добавлении
order_with_respect_to
в таблицу с существующими строками ( # 23983 ). - Восстановлен
pre_migrate
сигнал, если у всех приложений есть миграции ( # 23975 ). - Выполнены проверки системы администратора для пользовательских
AdminSite
s ( # 23497 ). - Убедитесь, что реестр приложений полностью заполнен при извлечении моделей. Когда внешний сценарий (например, инфраструктура очередей) перезагружает обработанные модели, он может аварийно завершить работу с
AppRegistryNotReady
исключением ( # 24007 ). - Добавлены кавычки в индексы полей в SQL, сгенерированном миграциями, чтобы предотвратить сбой, когда этого требует имя индекса ( # 24015 ).
- Добавлена
datetime.time
поддержка вопросника миграции ( # 23998 ). - Исправлен вылет админдока в приложениях, установленных как яйца ( # 23525 ).
- Изменен автодетектор миграций для генерации
AlterModelOptions
операции вместо операцийDeleteModel
иCreateModel
при измененииMeta.managed
. Это предотвращает потерю данных при переключенииmanaged
сFalse
наTrue
и наоборот ( # 24037 ). - Включена
sqlsequencereset
команда для приложений с миграциями ( # 24054 ). - Добавлен SQL табличного пространства в приложения с миграциями ( # 24051 ).
- Исправлено
contrib.sites
создание сайта по умолчанию при настройке нескольких баз данных ( # 24000 ). - Восстановлена поддержка для объектов, которые не являются
str
илиbytes
вdjango.utils.safestring.mark_for_escaping()
на Python 3. - Поддерживаемые строки, экранированные сторонними библиотеками, согласно
__html__
соглашению в шаблоне ( # 23831 ). - Предотвращен посторонний SQL в миграциях ( # 23581 ).
DROP DEFAULT
- Восстановлена возможность использования более пяти уровней подзапросов ( # 23758 ).
- Исправлена ошибка при
ValidationError
инициализации с ,ValidationError
который инициализируется со словарем ( # 24008 ). - Предотвращен сбой в приложениях без миграции при запуске
( # 23366 ).
migrate --list