• 3.2
  • 5.0
  • 6.1
  • Версия документации: 3.1

Примечания к выпуску 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.1, когда STATIC_ROOT имеет значение по умолчанию None (#23717).

  • Добавлена ​​совместимость GeoDjango с драйвером базы данных mysqlclient.

  • Исправлен сбой MySQL 5.6+ с GeometryFields при миграции (#23719).

  • Исправлен сбой миграции при удалении поля, на которое есть ссылка в AlterIndexTogether или AlterUniqueTogether (#23614).

  • Обновлен первый день недели в украинском языке на понедельник.

  • Добавлена ​​поддержка инициализации транзакционных пространственных метаданных в SpatiaLite 4.1+ (#23152).

  • Исправлен сбой при миграции, который не позволял изменить поле, допускающее значение NULL, со значением по умолчанию на поле, допускающее значение NULL, с тем же значением по умолчанию (#23738).

  • Исправлен сбой миграции при добавлении GeometryFields с blank=True в PostGIS (#23731).

  • Разрешено использование DateTimeField() как Transform.output_field (:ticket: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__(), когда имя файла содержит символы Юникода (#23888).

  • В представление администратора delete_selected добавлен отсутствующий контекст, который не позволял отображать пользовательский заголовок сайта и т. д. (#23898).

  • Исправлена ​​регрессия с динамически генерируемыми встроенными строками и разрешенными ссылками на поля в администраторе (#23754).

  • Исправлена ​​ошибка бесконечного цикла для некоторых зависимостей циклической миграции, а сообщение об ошибке для циклических зависимостей стало гораздо более полезным.

  • Добавлена ​​недостающая обработка index_together для SQLite (#23880).

  • Исправлен сбой, когда содержимое SQL RunSQL собиралось редактором схемы, обычно при использовании SQLmigrate (#23909).

  • Исправлена ​​регрессия в представлениях добавления/изменения contrib.admin, из-за которой некоторые методы ModelAdmin получали неправильное значение obj (#23934).

  • Исправлен сбой runserver, когда сообщение об ошибке сокета содержало символы Юникода (#23946).

  • Исправлена ​​сериализация типа при добавлении метода deconstruct() (#23950).

  • Запрещено django.contrib.auth.middleware.SessionAuthenticationMiddleware устанавливать заголовок Vary: Cookie во всех ответах (#23939).

  • Исправлен сбой при добавлении blank=True в TextField() в MySQL (#23920).

  • Исправлено создание индексов инфраструктурой миграции, особенно при работе со специфичными для PostgreSQL индексами {text|varchar}_pattern_ops (#23954).

  • Исправлена ​​ошибка в makemigrations, из-за которой создавались неработающие файлы миграции при работе с множественным наследованием таблиц и наследованием от более чем одной модели (#23956).

  • Исправлен сбой, когда MultiValueField содержит неверные данные (#23674).

  • Исправлен сбой в панели администратора при использовании «Сохранить как новый», а также при удалении соответствующей встроенной строки (#23857).

  • Всегда преобразует связанное_имя в текст (Юникод), поскольку это требуется в Python 3 для интерполяции. Удалено преобразование `` linked_name`` в текст при деконструкции миграции (#23455 и #23982).

  • Увеличены размеры табличных пространств, создаваемых по умолчанию для тестирования на Oracle (основное табличное пространство увеличено с 200 МБ до 300 МБ, а временное табличное пространство — со 100 МБ до 150 МБ). Это было необходимо для обеспечения роста собственного набора тестов Django (#23969).

  • Исправлены переводы фильтра «timesince» на корейский язык (#23989).

  • Исправлен SQLite SchemaEditor для правильного добавления значений по умолчанию при отсутствии указанного пользователем default. Например, CharField с Blank=True не присваивал существующим строкам пустую строку, что приводило к сбою при добавлении ограничения NOT NULL (#23987).

  • makemigrations больше не запрашивает значение по умолчанию при добавлении TextField() или CharField() без default (#23405).

  • Исправлен сбой миграции при добавлении order_with_respect_to в таблицу с существующими строками (#23983).

  • Восстановлен сигнал pre_migrate, если все приложения имеют миграцию (#23975).

  • Сделаны проверки системы администратора для пользовательских AdminSites (#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-код DROP DEFAULT при миграции (#23581).

  • Восстановлена ​​возможность использования более пяти уровней подзапросов (#23758).

  • Исправлен сбой, когда ValidationError инициализируется с помощью ValidationError, который инициализируется со словарем (#24008).

  • Предотвращен сбой в приложениях без миграции при запуске migrate --list (#23366).

Back to Top