Linimasa Pengusangan Django

Ringkasan dokumen ini ketika beragam potongan Django akan dipindahkan atau diubah dalam cara kesesuaian kebelakang, mengikuti pengusangan mereka, sebagai per deprecation policy. Lebih rinci tentang setiap barang dapat sering ditemukan dalam catatan terbitan dari dua versi sebelumnya.

4.1

See the Django 3.2 release notes for more details on these changes.

  • Support for assigning objects which don't support creating deep copies with copy.deepcopy() to class attributes in TestCase.setUpTestData() will be removed.
  • BaseCommand.requires_system_checks won't support boolean values.
  • The whitelist argument and domain_whitelist attribute of django.core.validators.EmailValidator will be removed.
  • The default_app_config module variable will be removed.
  • TransactionTestCase.assertQuerysetEqual() will no longer automatically call repr() on a queryset when compared to string values.
  • django.core.cache.backends.memcached.MemcachedCache will be removed.
  • Support for the pre-Django 3.2 format of messages used by django.contrib.messages.storage.cookie.CookieStorage will be removed.

4.0

Lihat Django 3.0 release notes untuk rincian lebih pada perubahan ini.

  • django.utils.http.urlquote(), urlquote_plus(), urlunquote(), dan urlunquote_plus() akan dipindahkan.
  • django.utils.encoding.force_text() dan smart_text() akan dipindahkan.
  • django.utils.translation.ugettext(), ugettext_lazy(), ugettext_noop(), ungettext(), dan ungettext_lazy() akan dipindahkan.
  • django.views.i18n.set_language() akan tidak lama lagi menyetel bahasa pengguna dalam request.session (key django.utils.translation.LANGUAGE_SESSION_KEY).
  • alias=None akan diperlukan dalam tanda tangan dari subkelas django.db.models.Expression.get_group_by_cols().
  • django.utils.text.unescape_entities() akan dipindahkan.
  • django.utils.http.is_safe_url() akan dipindahkan.

See the Django 3.1 release notes for more details on these changes.

  • The PASSWORD_RESET_TIMEOUT_DAYS setting will be removed.
  • The undocumented usage of the isnull lookup with non-boolean values as the right-hand side will no longer be allowed.
  • The django.db.models.query_utils.InvalidQuery exception class will be removed.
  • The django-admin.py entry point will be removed.
  • The HttpRequest.is_ajax() method will be removed.
  • Support for the pre-Django 3.1 encoding format of cookies values used by django.contrib.messages.storage.cookie.CookieStorage will be removed.
  • Support for the pre-Django 3.1 password reset tokens in the admin site (that use the SHA-1 hashing algorithm) will be removed.
  • Support for the pre-Django 3.1 encoding format of sessions will be removed.
  • Support for the pre-Django 3.1 django.core.signing.Signer signatures (encoded with the SHA-1 algorithm) will be removed.
  • Support for the pre-Django 3.1 django.core.signing.dumps() signatures (encoded with the SHA-1 algorithm) in django.core.signing.loads() will be removed.
  • Support for the pre-Django 3.1 user sessions (that use the SHA-1 algorithm) will be removed.
  • The get_response argument for django.utils.deprecation.MiddlewareMixin.__init__() will be required and won't accept None.
  • The providing_args argument for django.dispatch.Signal will be removed.
  • The length argument for django.utils.crypto.get_random_string() will be required.
  • The list message for ModelMultipleChoiceField will be removed.
  • Support for passing raw column aliases to QuerySet.order_by() will be removed.
  • The model NullBooleanField will be removed. A stub field will remain for compatibility with historical migrations.
  • django.conf.urls.url() akan dipindahkan.
  • The model django.contrib.postgres.fields.JSONField will be removed. A stub field will remain for compatibility with historical migrations.
  • django.contrib.postgres.forms.JSONField, django.contrib.postgres.fields.jsonb.KeyTransform, and django.contrib.postgres.fields.jsonb.KeyTextTransform will be removed.
  • The {% ifequal %} and {% ifnotequal %} template tags will be removed.
  • The DEFAULT_HASHING_ALGORITHM transitional setting will be removed.

3.1

Lihat Django 2.2 release notes untuk rincian lebih pada perubahan ini.

  • django.utils.timezone.FixedOffset akan dipindahkan.
  • django.core.paginator.QuerySetPaginator akan dipindahkan.
  • Sebuah model Meta.ordering akan tidak lagi mempengaruhi permintaan GROUP BY.
  • django.contrib.postgres.fields.FloatRangeField dan django.contrib.postgres.forms.FloatRangeField akan dipindahkan.
  • Pengaturan FILE_CHARSET akan dipindahkan.
  • django.contrib.staticfiles.storage.CachedStaticFilesStorage akan dipindahkan.
  • RemoteUserBackend.configure_user() akan membutuhkan request sebagai argumen penempatan pertama.
  • Dukungan untuk SimpleTestCase.allow_database_queries dan TransactionTestCase.multi_db akan dipindahkan.

3.0

Lihat Django 2.0 release notes untuk rincian lebih pada perubahan-perubahan ini.

  • Modul django.db.backends.postgresql_psycopg2 akan dipindahkan.
  • django.shortcuts.render_to_response() akan dipindahkan.
  • Pengaturan DEFAULT_CONTENT_TYPE akan dipindahkan.
  • HttpRequest.xreadlines() akan dipindahkan.
  • Dukungan untuk argumen context dari Field.from_db_value() dan Expression.convert_value() akan dipindahkan.
  • Argumen katakunci field_name dari QuerySet.earliest() and latest() akan dipindahkan.

Lihat Django 2.1 release notes untuk rincian lebih pada perubahan ini.

  • django.contrib.gis.db.models.functions.ForceRHR akan dipindahkan.
  • django.utils.http.cookie_date() akan dipindahkan.
  • Pustaka etiket cetakan staticfiles dan admin_static akan dipindahkan.
  • django.contrib.staticfiles.templatetags.static() akan dipindahkan.
  • Shim ini mengizinkan InlineModelAdmin.has_add_permission() ditentukan tanpa sebuah argumen obj akan dipindahkan.

2.1

Lihat Django 1.11 release notes untuk lebih rinci pada perubahan ini.

  • contrib.auth.views.login(), logout(), password_change(), password_change_done(), password_reset(), password_reset_done(), password_reset_confirm(), dan password_reset_complete() akan dipindahkan.
  • Parameter extra_context dari contrib.auth.views.logout_then_login() akan dipindahkan.
  • django.test.runner.setup_databases() akan dipindahkan.
  • django.utils.translation.string_concat() akan dipindahkan.
  • django.core.cache.backends.memcached.PyLibMCCache tidak akan lagi mengukung melewatkan pengaturan perilaku pylibmc sebagai atribut tingkat-atas dari OPTIONS.
  • Parameter host dari django.utils.http.is_safe_url() akan dipindahkan.
  • Mendiamkan dari pengecualian dimunculkan selagi membangun etiket cetakan {% include %} akan dipindahkan.
  • DatabaseIntrospection.get_indexes() akan dipindahkan.
  • Metode authenticate() dari backend autentifikasi akan membutuhkan request sebagai argumen penempatan pertama.
  • Penghias django.db.models.permalink() akan dipindahkan.
  • Pengaturan USE_ETAGS akan dipindahkan. CommonMiddleware and django.utils.cache.patch_response_headers() tidak akan lagi menyetel ETag.
  • Atribut Model._meta.has_auto_field akan dipindahkan.
  • url() mendukugn dibarisan bendera dalam kelompok regular expression ((?i), (?L), (?m), (?s), and (?u)) akan dipindahkan.
  • Mendukung untuk metode Widget.render() tanpa argumen renderer akan dipindahkan.

2.0

Lihat Django 1.9 release notes untuk lebih rinci pada perubahan ini.

  • Argumen weak pada django.dispatch.signals.Signal.disconnect() akan dipindahkan.
  • django.db.backends.base.BaseDatabaseOperations.check_aggregate_support() akan dipindahkan.
  • Paket django.forms.extras akan dipindahkan.
  • Pembantu assignment_tag akan dipindahkan.
  • Argumen host pada assertsRedirects akan dipindahkan. Lapisan kesesuaian yang mengizinkan URL mutlak untuk di pertimbangkan sama pada yang relatif ketika jalur sama akan juga dipindahkan.
  • Field.rel akan dipindahkan.
  • Atribut Field.remote_field.to akan dipindahkan.
  • Argumen on_delete untuk ForeignKey dan OneToOneField akan dibutuhkan.
  • django.db.models.fields.add_lazy_relation() akan dipindahkan.
  • Ketika dukungan zona waktu diadakan, backend basisdata yang tidak mendukung zona waktu tidak akan merubah tanggal waktu ke nilai naif dalam UTC lagi ketika nilai-nilai tersebut dilewatkan sebagai parameter pada permintaan SQl dijalankan diluar dari ORM, yaitu dengan cursor.execute().
  • Penghias django.contrib.auth.tests.utils.skipIfCustomUser() akan dipindahkan.
  • Kelas GeoManager dan GeoQuerySet akan dipindahkan.
  • Modul django.contrib.gis.geoip akan dipindahkan.
  • Pemeriksaan supports_recursion untuk pemuat cetakan akan dipindahkan dari:
    • django.template.engine.Engine.find_template()
    • django.template.loader_tags.ExtendsNode.find_template()
    • django.template.loaders.base.Loader.supports_recursion()
    • django.template.loaders.cached.Loader.supports_recursion()
  • Cara pemuat cetakan load_template() dan load_template_sources() akan dipindahkan.
  • Argumen template_dirs untuk pemuat cetakan akan dipindahkan:
    • django.template.loaders.base.Loader.get_template()
    • django.template.loaders.cached.Loader.cache_key()
    • django.template.loaders.cached.Loader.get_template()
    • django.template.loaders.cached.Loader.get_template_sources()
    • django.template.loaders.filesystem.Loader.get_template_sources()
  • Cara django.template.loaders.base.Loader.__call__()` akan dipindahkan.
  • Dukungan untuk tampilan penyesuaian kesalahan dengan parameter penempatan tunggal akan dihilangkan.
  • Atribut mime_type dari django.utils.feedgenerator.Atom1Feed dan django.utils.feedgenerator.RssFeed akan dipindahkan mendukung dari content_type.
  • Argumen app_name pada django.conf.urls.include() akan dipindahkan.
  • Dukungan untuk melewatkan 3-tuple sebagai argumen eprtama untuk include() akan dipindahkan.
  • Dukungan untuk pengaturan namespace instance URL tanpa sebuah aplikasi namescpae akan dipindahkan.
  • Field._get_val_from_obj() akan dipindahkan mendukung Field.value_from_object().
  • django.template.loaders.eggs.Loader akan dipindahkan.
  • Parameter current_app ke tampilan contrib.auth akan dipindahkan.
  • Argumen katakunci callable_obj pada SimpleTestCase.assertRaisesMessage() akan dipindahkan.
  • Dukungan untuk atribut allow_tags pada cara ModelAdmin akan dipindahkan.
  • Argumen katakunci enclosure pada SyndicationFeed.add_item() akan dipindahkan.
  • Nama lain django.template.loader.LoaderOrigin dan django.template.base.StringOrigin untuk django.template.base.Origin akan dipindahkan.

Lihat Django 1.10 release notes untuk rincian lebih pada perubahan ini.

  • Pilihan makemigrations --exit akan dipindahkan.
  • Dukungan untuk penugasan langsung untuk membalikkan foreign key atau hubungan many-to-many akan dipindahkan.
  • Cara get_srid() dan set_srid() dari django.contrib.gis.geos.GEOSGeometry akan dipindahkan.
  • Cara get_x(), set_x(), get_y(), set_y(), get_z(), dan set_z() dari django.contrib.gis.geos.Point akan dipindahkan.
  • Cara get_coords() dan set_coords() dari django.contrib.gis.geos.Point akan dipindahkan.
  • cascaded_union milik dari django.contrib.gis.geos.MultiPolygon akan dipindahkan.
  • django.utils.functional.allow_lazy() akan dipindahkan.
  • Pilihan shell --plain akan dipindahkan.
  • Modul django.core.urlresolvers akan dipindahkan.
  • Model CommaSeparatedIntegerField akan dipindahkan. Potongan bidang akan tetap untuk kesesuaian dengan riwayat perpindahan.
  • Dukungan untuk cetakan cara Context.has_key() akan dipindahkan.
  • Dukungan untuk cara django.core.files.storage.Storage.accessed_time(), created_time(), dan modified_time() akan dipindahkan.
  • Dukungan untuk pencarian permintaan menggunakan nama model ketika Meta.default_related_name disetel akan dipindahkan.
  • Permintaan pencarian __search dan cara DatabaseOperations.fulltext_search_sql() akan dipindahkan.
  • Shim untuk mendukung penyesuaian kelas-kelas pengelola terkait tanpa metode _apply_rel_filters() akan dipindahkan.
  • Menggunakan User.is_authenticated() dan User.is_anonymous() sebagai cara tidak akan lagi didukung.
  • Atribut pribadi virtual_fields dari Model._meta akan dipindahkan.
  • Argumen katakunci pribadi virtual_only dalam Field.contribute_to_class() dan virtual dalam Model._meta.add_field() akan dipindahkan.
  • Tampilan javascript_catalog() dan json_catalog() akan dipindahkan.
  • Fungsi django.contrib.gis.utils.precision_wkt() akan dipindahkan.
  • Dalam warisan banyak-tabel, promosi tersirat dari OneToOneField ke a parent_link akan dipindahkan.
  • Dukungan untuk Widget._format_value() akan dipindahkan.
  • Cara FileField get_directory_name() dan get_filename() akan dipindahkan.
  • Fungsi mark_for_escaping() dan kelas-kelas dia gunakan: EscapeData, EscapeBytes, EscapeText, EscapeString, dan EscapeUnicode akan dipindahkan.
  • Penyaring escape akan berubah untuk menggunakan django.utils.html.conditional_escape().
  • Manager.use_for_related_fields akan dipindahkan.
  • Warisan model manager akan mengikuti aturan warisan MRO dan Meta.manager_inheritance_from_future untuk di daftarkan pada kebiasaan ini akan dipindahkan.
  • Dukungan untuk middleware gaya-lama menggunakan settings.MIDDLEWARE_CLASSES akan dipindahkan.

1.10

Lihat Django 1.8 release notes untuk lebih rinci pada perubahan ini.

  • Dukungan untuk memanggil SQLCompiler secara langsung sebagai nama lain untuk memanggil cara quote_name_unless_alias nya akan dipindahkan.
  • Etiket cetakan cycle dan firstof akan dipindahkan dari pustaka etiket cetakan future (digunakan selama masa pengusangan 1.6/1.7).
  • django.conf.urls.patterns()` akan dipindahkan.
  • Dukungan untuk argumen prefix pada django.conf.urls.i18n.i18n_patterns() akan dipindahkan.
  • SimpleTestCase.urls akan dipindahkan.
  • Menggunakan jumlah tidak benar dari nilai-nilai dibongkar etiket cetakan for akan memunculkan pengecualian dari pada gagal diam-diam.
  • Kemampuan untuk membalikkan URL menggunakan jalur Python bertitik akan dipindahkan.
  • Kemampuan menggunakan jalur Python bertitik untuk pengaturan LOGIN_URL dan LOGIN_REDIRECT_URL akan dipindahkan.
  • Dukungan untuk optparse akan dihilangkan untuk perintah pengelolaan penyesuaian (diganti oleh argparse).
  • Kelas django.core.management.NoArgsCommand akan dipindahkan. Gunakan BaseCommand sebagai gantinya, yang tidak mengambil argumen secara permulaan.
  • Modul django.core.context_processors akan dipindahkan.
  • Modul django.db.models.sql.aggregates akan dipindahkan.
  • Modul django.contrib.gis.db.models.sql.aggregates akan dipindahkan.
  • Cara dan properti berikut dari django.db.sql.query.Query akan dipindahkan:
    • Properti: aggregates dan aggregate_select
    • Cara: add_aggregate, set_aggregate_mask, dan append_aggregate_mask.
  • django.template.resolve_variable akan dipindahkan.
  • API pribadi berikut akan dipindahkan dari django.db.models.options.Options (Model._meta):
    • get_field_by_name()
    • get_all_field_names()
    • get_fields_with_model()
    • get_concrete_fields_with_model()
    • get_m2m_with_model()
    • get_all_related_objects()
    • get_all_related_objects_with_model()
    • get_all_related_many_to_many_objects()
    • get_all_related_m2m_objects_with_model()
  • Argumen error_message dari django.forms.RegexField akan dipindahkan.
  • Penyaring unordered_list tidak akan mendukung lagi daftar gaya lama.
  • Dukungan untuk deretan karakter argumen view pada url() akan dipindahkan.
  • Shim kesesuaian kebelakang untuk dinamai kembali django.forms.Form._has_changed() menjadi has_changed() telah dipindahkan.
  • Penyaring cetakan removetags akan dipindahkan.
  • Fungsi remove_tags() dan strip_entities() di django.utils.html akan dipindahkan.
  • Argumen is_admin_site pada django.contrib.auth.views.password_reset() akan dipindahkan.
  • django.db.models.field.subclassing.SubfieldBase akan dipindahkan.
  • django.utils.checksums akan dipindahkan; kegunaannya disertakan di django-localflavor 1.1+
  • Atribut original_content_type_id pada django.contrib.admin.helpers.InlineAdminForm akan dipindahkan.
  • Shim kesesuaian kebelakang mengizinkan FormMixin.get_form() untuk ditentukan dengan tidak ada nilai awalan untuk argumen form_class nya akan dipindahkan.
  • Pengaturan berikut akan dipindahkan:
    • ALLOWED_INCLUDE_ROOTS
    • TEMPLATE_CONTEXT_PROCESSORS
    • TEMPLATE_DEBUG
    • TEMPLATE_DIRS
    • TEMPLATE_LOADERS
    • TEMPLATE_STRING_IF_INVALID
  • Nama lain kesesuaian kebelakang django.template.loader.BaseLoader akan dipindahkan.
  • Obyek cetakan Django dikembalikan oleh func:~django.template.loader.get_template dan select_template() tidak akan menerima Context dalam cara render() mereka lagi.
  • Template response APIs akan melaksanakan penggunaan dari obyek cetakan dict dan backend-dependent daripada Context dan Template masing-masing.
  • Parameter current_app untuk fungsi dan kelas berikut akan dipindahkan:
    • django.shortcuts.render()
    • django.template.Context()
    • django.template.RequestContext()
    • django.template.response.TemplateResponse()
  • Parameter dictionary dan context_instance untuk fungsi berikut akan dipindakan:
    • django.shortcuts.render()
    • django.shortcuts.render_to_response()
    • django.template.loader.render_to_string()
  • Parameter dirs untuk fungsi berikut akan dipindahkan:
    • django.template.loader.get_template()
    • django.template.loader.select_template()
    • django.shortcuts.render()
    • django.shortcuts.render_to_response()
  • Pembuktian sesi akan diadakan tanpa memerhatikan dari apakah atau tidak 'django.contrib.auth.middleware.SessionAuthenticationMiddleware' di MIDDLEWARE_CLASSES.
  • Atribut pribadi django.db.models.Field.related akan dipindahkan.
  • Pilihan --list dari perintah pengelolaan migrate akan dipindahkan.
  • Etiket cetakan ssi akan dipindahkan.
  • Dukungan untuk = penghubung perbandingan di etiket cetakan if akan dipindahkan.
  • Shim kesesuaian kebelakang mengizinkan Storage.get_available_name() dan Storage.save() untuk ditentukan tanpa sebuah argumen max_length akan dipindahkan.
  • Dukungan untuk warisan sintaksis %(<foo>)s di ModelFormMixin.success_url akan dipindahkan.
  • GeoQuerySet kumpulan cara collect(), extent(), extent3d(), make_line(), dan unionagg() akan dipindahkan.
  • Kemampuan untuk menentukan ContentType.name ketika membuat instance jenis isi akan dipindahkan.
  • Dukungan untuk tanda tangan lama dari allow_migrate akan dipindahkan. Dia dirubah dari allow_migrate(self, db, model) menjadi allow_migrate(self, db, app_label, model_name=None, **hints).
  • Dukungan untuk sintaksis {% cycle %} yang menggunakan argumen dipisah-koma akan dipindahkan.
  • Peringatan yang Signer muncul ketika pemisah tidak sah yang diberikan akan menjadi sebuah pengecualian.

1.9

Lihat Django 1.7 release notes untuk rincian lebih pada perubahan ini.

  • django.utils.dictconfig akan dipindahkan.
  • django.utils.importlib akan dipindahkan.
  • django.utils.tzinfo akan dipindahkan.
  • django.utils.unittest akan dipindahkan.
  • Perintah syncdb akan dipindahkan.
  • django.db.models.signals.pre_syncdb dan django.db.models.signals.post_syncdb akan dipindahkan.
  • allow_syncdb pada router basisdata tidak lagi otomatis menjadi allow_migrate.
  • Sinkronisasi otomatis dari aplikasi tanpa perpindahan akan dipindahkan. Perpindahan akan menjadi wajib untuk semua aplikasi meskipun anda melewati pilihan --run-syncdb untuk migrate.
  • Perintah pengelolaan SQL untuk aplikasi tanpa perpindahan, sql, sqlall, sqlclear, sqldropindexes, dan sqlindexes, akan dipindahkan.
  • Dukungan untuk memuat otomatis dari perlengkapan initial_data dan data SQL awal akan dipindahkan.
  • Semua model akan butuh ditentukan didalam aplikasi terpasang atau menyatakan eksplisit app_label. Lebih jauh, dia tidak akan memungkinkan untuk mengimpor didalam paket akar dari apliaksi mereka.
  • Model dan formulir IPAddressField akan dipindahkan. Bidang potongan akan tetap untuk kesesuaian dengan riwayat perpindahan.
  • AppCommand.handle_app() tidak lama lagi didukung.
  • RequestSite dan get_current_site() tidak akan lagi dapat diimpor dari django.contrib.sites.models.
  • Dukungan FastCGI melalui perintah pengelolaan runfcgi akan dipindahkan. Harap sebarkan proyek anda menggunakan WSGI.
  • django.utils.datastructures.SortedDict akan dipindahkan. Gunakan collections.OrderedDict dari pustaka standar Python.
  • ModelAdmin.declared_fieldsets akan dipindahkan.
  • Instance dari util.py di kode basis Django telah dinamai kembali ke utils.py` dalam sebuah usaha untuk menyatukan semua acuan alat dan alat-alat. Modul-modul yang menyediakan kesesuaian kebelakang akan dipindahkan:
    • django.contrib.admin.util
    • django.contrib.gis.db.backends.util
    • django.db.backends.util
    • django.forms.util
  • ModelAdmin.get_formsets akan dipindahkan.
  • Shim kesesuaian kebelakang diperkenalkan untuk menamai kembali metode BaseMemcachedCache._get_memcache_timeout() pada get_backend_timeout() akan dipindahkan.
  • Pilihan --natural dan -n untuk dumpdata akan dipindahkan.
  • Argumen use_natural_keys untuk serializers.serialize() akan dipindahkan.
  • API pribadi django.forms.forms.get_declared_fields() akan dipindahkan.
  • Kemampuan untuk menggunakan SplitDateTimeWidget dengan DateTimeField akan dipindahkan.
  • Properti WSGIRequest.REQUEST akan dipindahkan.
  • Kelas django.utils.datastructures.MergeDict akan dipindahkan.
  • Kode bahasa zh-cn dan zh-tw akan dipindahkan dan telah digantikan oleh kode bahasa zh-hans and zh-hant masing-masing.
  • Internal django.utils.functional.memoize akan dipindahkan.
  • django.core.cache.get_cache akan dipindahkan. Tambah masukan yang cocok untuk CACHES dan gunakan django.core.cache.caches.
  • django.db.models.loading akan dipindahkan.
  • Melewatkan argumen callable ke queryset tidak akan lagi memungkinkan.
  • BaseCommand.requires_model_validation akan dipindahkan mendukung requires_system_checks. Pengesah admin akan diganti dengan admin pemeriksa.
  • Atribut ModelAdmin.validator_class` dan default_validator_class akan dipindahkan.
  • ModelAdmin.validate() akan dipindahkan.
  • django.db.backends.DatabaseValidation.validate_field akan dipindahkan mundukung cara check_field.
  • Perintah pengelolaan validate akan dipindahkan.
  • django.utils.module_loading.import_by_path akan dipindahkan mendukung django.utils.module_loading.import_string`.
  • Etiket cetakan ssi dan url akan dipindahkan dari pustaka etiket cetakan future (digunakan selama masa pengusangan 1.3/1.4).
  • django.utils.text.javascript_quote akan dipindahkan.
  • Pengaturan percobaan basisdata sebagai masukan berdiri sendiri dalam pengaturan basisdata, diawali dengan TEST_, tidak lagi didukung.
  • The cache_choices option to ModelChoiceField and ModelMultipleChoiceField will be removed.
  • Nilai awal dari atribut RedirectView.permanent akan berubah dari True menjadi False.
  • django.contrib.sitemaps.FlatPageSitemap akan dipindahkan mendukung django.contrib.flatpages.sitemaps.FlatPageSitemap.
  • API pribadi django.test.utils.TestTemplateLoader akan dipindahkan.
  • Modul django.contrib.contenttypes.generic akan dipindahkan.
  • API Pribadi django.db.models.sql.where.WhereNode.make_atom() dan django.db.models.sql.where.Constraint akan dipindahkan.

1.8

Lihat Django 1.6 release notes untuk rincian lebih pada perubahan ini.

  • django.contrib.comments akan dipindahkan.
  • Transaksi pengelolaan API berikut akan dipindahkan:
    • TransactionMiddleware,
    • Penghias dan pengelola konteks autocommit, commit_on_success, dan commit_manually, ditentukan dalam django.db.transaction,
    • Fungsi commit_unless_managed dan rollback_unless_managed, juga ditentukan dalam django.db.transaction,
    • Pengaturan TRANSACTIONS_MANAGED.
  • Etiket cetakan cycle dan firstof akan meloloskan-otomatis argumen mereka. Dalam 1.6 dan 1.7, kebiasaan ini disediakan oleh versi dari etiket ini di pustaka etiket cetakan future.
  • Pengaturan SEND_BROKEN_LINK_EMAILS akan dipindahkan. Tambah middleware django.middleware.common.BrokenLinkEmailsMiddleware ke pengaturan MIDDLEWARE_CLASSES sebagai gantinya.
  • django.middleware.doc.XViewMiddleware akan dipindahkan. Lebih baik gunakan django.contrib.admindocs.middleware.XViewMiddleware.
  • Model._meta.module_name telah dinamai kembali menjadi model_name.
  • Memindahkan shim kesesuaian kebelakang diperkenalkan untuk menamai kembali get_query_set dan metode queryset yang mirip dipindahkan. Ini mempengaruhi kelas-kelas berikut: BaseModelAdmin, ChangeList, BaseCommentNode, GenericForeignKey, Manager, SingleRelatedObjectDescriptor dan ReverseSingleRelatedObjectDescriptor.
  • Memindahkan shim kesesuaian kebelakang diperkenalkan untuk menamai kembali atribut ChangeList.root_query_set dan ChangeList.query_set.
  • django.views.defaults.shortcut akan dipindahkan, sebagai bagian dari tujuan memindahkan semua acuan django.contrib dari basiskode inti Django. Daripada menggunakan django.contrib.contenttypes.views.shortcut. django.conf.urls.shortcut akan juga dipindahkan.
  • Dukungan untuk modul Python Imaging Library (PIL) akan dipindahkan, saat itu tidak lagi muncul secara aktif dirawat & tidak bekerja pada Python 3.
  • API pribadi berikut akan dipindahkan:
    • django.db.backend
    • django.db.close_connection()
    • django.db.backends.creation.BaseDatabaseCreation.set_autocommit()
    • django.db.transaction.is_managed()
    • django.db.transaction.managed()
  • django.forms.widgets.RadioInput akan dipindahkan mendukung django.forms.widgets.RadioChoiceInput.
  • Modul django.test.simple dan kelas django.test.simple.DjangoTestSuiteRunner akan dipindahkan. Sebagai gantinya gunakan django.test.runner.DiscoverRunner.
  • Modul django.test._doctest akan dipindahkan. Sebagai gantinya gunakan modul doctest dari pustaka biasa Python.
  • Pengaturan CACHE_MIDDLEWARE_ANONYMOUS_ONLY akan dipindahkan.
  • Penggunaan dari kode keras Menekan "Control", atau "Command" pada Mac, untuk memilih lebih dari satu. deretan karakter untuk dikesampingkan atau ditambah ke help_text disediakan pengguna dalam formulir untuk model bidang ManyToMany tidak akan dilakukan oleh Django lagi pada model atau lapisan formulir.
  • Cara Model._meta.get_(add|change|delete)_permission akan dipindahkan.
  • Kunci sesi django_language tidak lama lagi dapat dibaca untuk kesesuaian kebelakang.
  • Petasitus Geografis akan dipindahkan (django.contrib.gis.sitemaps.views.index dan django.contrib.gis.sitemaps.views.sitemap).
  • django.utils.html.fix_ampersands, penyaring cetakan fix_ampersands dan django.utils.html.clean_html akan dipindahkan mengikuti pengusangan yang dipercepat.

1.7

Lihat Django 1.5 release notes untuk lebih rinci pada perubahan ini.

  • Modul django.utils.simplejson akan dipindahkan. Pustaka standar menyediakan json yang harus digunakan sebagai gantinya.
  • Fungsi django.utils.itercompat.product akan dipindahkan. Versi terpasang tetap Python harus digunakan sebagai gantinya.
  • Pembenaran-otomatis dari pengaturan INSTALLED_APPS dan TEMPLATE_DIRS ketika mereka ditentukan sebagai deretan karakter kosong daripada sebuah tuple akan dipindahkan dan menerbitkan pengecualian.
  • Argumen mimetype pada cara __init__ dari HttpResponse, SimpleTemplateResponse, dan TemplateResponse, akan dipindahkan. content_type harus digunakan sebagai gantinya. Ini juga berlaku pada jalan pintas render_to_response() dan tampilan peta situs, index() dan sitemap().
  • Ketika HttpResponse dipakai dengan sebuah pengulang, atau ketika content disetel ke sebuah pengulang, yang pengulang akan segera dikonsumsi.
  • Pengaturan AUTH_PROFILE_MODULE, dan cara get_profile() pada model User akan dipindahkan.
  • Perintah pengelolaan cleanup akan dipindahkan. Dia diganti oleh clearsessions.
  • Tulisan daily_cleanup.py akan dipindahkan.
  • Argumen katakunci depth akan dipindahkan dari select_related().
  • Fungsi get_warnings_state()/restore_warnings_state() tidak terdokumentasikan dari cara django.test.utils dan save_warnings_state()/ restore_warnings_state() django.test.*TestCase diusangkan. Gunakan pengelola konteks warnings.catch_warnings tersedia dimulai dengan Python 2.6 sebagai gantinya.
  • Cara check_for_test_cookie tidak terdokumentasi di AuthenticationForm akan dipindahkan mengikuti pengusangan dipercepat. Pengguna mensubkelaskan formulir ini harus memindahkan panggilan pada cara ini, dan malahan memastikan bahwa otentifikasi terkait tampilan mereka dilindungi CSRF, yang memastikan bahwa kue diadakan.
  • Versi dari django.contrib.auth.views.password_reset_confirm() yang mendukung penyandian base36 ID pengguna (django.contrib.auth.views.password_reset_confirm_uidb36) akan dipindahkan. Jika situs anda telah menjalankan Django 1.6 untuk lebih dari PASSWORD_RESET_TIMEOUT_DAYS, perubahan ini tidak akan memiliki pengaruh. Jika tidak, kemudian tautan menyetel kembali sandi apapun dibangkitkan sebelum anda meningkatkan ke Django 1.7 tidak akan bekerja setelah ditingkatkan.
  • Mix-in django.utils.encoding.StrAndUnicode akan dipindahkan.

1.6

Lihat Django 1.4 release notes untuk lebih rinci pada perubahan ini.

  • django.contrib.databrowse akan dipindahkan.
  • django.contrib.localflavor akan dipindahkan mengikuti pengusangan yang dipercepat.
  • django.contrib.markup akan dipindahkan mengikuti pengusangan yang dipercepat.
  • Modul kesesuaian django.utils.copycompat dan django.utils.hashcompat sama dan juga fungsi django.utils.itercompat.all dan django.utils.itercompat.any akan dipindahkan. Versi pasang tetap Python harus digunakan sebagai gantinya.
  • Penghias csrf_response_exempt and csrf_view_exempt akan dipindahkan. Sejak 1.4 csrf_response_exempt telah menjadi tidak beroperasi (dia mengembalikan fungsi sama), dan csrf_view_exempt telah menjadi sinonim untuk django.views.decorators.csrf.csrf_exempt, yang harus digunakan untuk menggantinya.
  • Backend django.core.cache.backends.memcached.CacheClass telah dipisah menjadi dua di Django 1.3 agar memperkenalkan dukungan untuk PyLibMC. Riwayat CacheClass akan dipindahkan mendukung django.core.cache.backends.memcached.MemcachedCache.
  • Obyek awalan UK dari django.contrib.localflavor.uk hanya akan diakses melalui nama-nama awalan GB mereka (GB adalah kode benar ISO 3166 untuk Inggris).
  • Pengaturan IGNORABLE_404_STARTS dan IGNORABLE_404_ENDS telah digantikan oleh IGNORABLE_404_URLS di terbitan 1.4. Mereka akan dipindahkan.
  • Wizard formulir telah direfaktorisasi untuk menggunakan tampilan berdasar kelas dengan backend dapat tertanam di 1.4. Penerapan sebelumnya akan dipindahkan.
  • Cara warisan dari memanggil cache_page() akan dipindahkan.
  • Shim kesesuaian-kebelakang untuk otomatis menambah penyaring slah-pencari kesalahan pada penangan pencatatan 'mail_admins' akan dipindahkan. Pengaturan LOGGING harus menyertakan penyaring ini secara ekplisit jika itu diminta.
  • Fungsi pemotongan pasang tetap django.utils.text.truncate_words() dan django.utils.text.truncate_html_words() akan dipindahkan mendukung kelas django.utils.text.Truncator.
  • Kelas django.contrib.gis.geoip.GeoIP telah dipindahkan ke django.contrib.gis.geoip di 1.4 -- jalan pintas di django.contrib.gis.utils akan dipindahkan.
  • django.conf.urls.defaults akan dipindahkan. Fungsi-fungsi include(), patterns(), and url(), plus handler404 dan handler500 sekarang tersedia melalui django.conf.urls.
  • Fungsi setup_environ() dan execute_manager() akan dipindahkan dari django.core.management. Ini juga berarti bahwa gaya lama (pra-1.4) dari berkas manage.py tidak lama akan bekerja lagi.
  • Pengaturan bendera is_safe dan needs_autoescape sebagai atribut dari fungsi penyaring penyesuaian tidak lagi didukung.
  • Atribut HttpRequest.raw_post_data telah dinamai kembali ke HttpRequest.body di 1.4. Kesesuaian kebelakang akan dipindahkan -- HttpRequest.raw_post_data tidak lagi bekerja.
  • Nilai untuk parameter post_url_continue dalam ModelAdmin.response_add() akan harus menjadi antara None (untuk mengalihkan ke halaman penyuntingan obyek baru dibuat) atau url pra dibentuk. Bentuk deretan karakter, seperti awal sebelumnya '../%s/', tidak akan diterima lagi.

1.5

Lihat Django 1.3 release notes untuk lebih rinci pada perubahan ini.

  • Memulai Django tanpa SECRET_KEY akan menghasilkan sebuah pengecualian daripada DeprecationWarning. (Ini dipercepat dari jalur pengusangan biasa; lihat Django 1.4 release notes.)
  • Penanganan permintaan mod_python akan dipindahkan. Penanganan mod_wsgi harus digunakan.
  • Atribut template pada obyek django.test.client.Response dikembalikan oleh test client akan dipindahkan. Atribut templates harus digunakan sebagai gantinya.
  • django.test.simple.DjangoTestRunner akan dipindahkan. Daripada menggunakan kelas asli-unittest. Fitur-fitur dari django.test.simple.DjangoTestRunner (termasuk gagal-cepat dan pengujian penghentian Ctrl-C) dapat disediakan oleh unittest.TextTestRunner.
  • Fungsi tidak didokumentasi django.contrib.formtools.utils.security_hash akan dipindahkan, sebagai gantinya gunakan django.contrib.formtools.utils.form_hmac
  • Modul tampilan umum berbasis-fungsi akan dipindahkan mendukung setara berbasis-kelas mereka, diuraikan here.
  • django.core.servers.basehttp.AdminMediaHandler akan dipindahkan. Dalam tempatnya gunakan django.contrib.staticfiles.handlers.StaticFilesHandler.
  • Pustaka etiket cetakan adminmedia dan etiket cetakan {% admin_media_prefix %} akan dipindahkan mendukung penanganan berkas-berkas tetap umum. (Ini lebih cepat daripada jalur pengusangan biasa; lihat Django 1.4 release notes.)
  • Etiket cetakan url dan ssi akan dirubah sehingga argumen eprtama pada setiap etiket adalah sebuah variabel cetakan, bukan sebuah deretan karakter sisipan.
  • Perintah pengelolaan reset dan sqlreset akan dipindahkan.
  • Backend otentifikasi akan butuh mendukung pengguna tidak aktif sedang diloloskan ke semua cara berurusan dengan perizinan. Atribut supports_inactive_user akan tidak lagi dicentang dan dapat dipindahkan dari backend penyesuaian.
  • transform() akan menimbulkan GEOSException ketika dipanggil pada geometri dengan tidak ada nilai SRID.
  • django.http.CompatCookie akan dipindahkan mendukung django.http.SimpleCookie.
  • django.core.context_processors.PermWrapper` dan django.core.context_processors.PermLookupDict akan dipindahkan mendukung terhubung django.contrib.auth.context_processors.PermWrapper dan django.contrib.auth.context_processors.PermLookupDict, masing-masing.
  • Pengaturan MEDIA_URL atau STATIC_URL akan diwajibkan untuk mengakhiri dengan garis miring untuk memastikan ada cara selaras untuk menggabungkan jalur-jalur di cetakan.
  • django.db.models.fields.URLField.verify_exists akan dipindahkan. Fitur telah diusangkan di 1.3.1 karena masalah keamanan dan penampilan dan akan mengikuti sedikit penyesuaian kerangka waktu pengusangan.
  • Terjemahan bertempat dibawah yang disebut jalur proyek akan diabaikan selama pengolahan membangun terjemahan dilakukan pada waktu lari. Pengaturan LOCALE_PATHS dapat digunakan untuk tugas sama dengan menyertakan jalur sistem berkas ke pelipat locale mengandung terjemahan bukan aplikasi tertensi di nilainya.
  • Aplikasi bantuah markah tidak lagi mendukung versi pustaka Python-Markdown lebih awal dari 2.1. Sebuah linimasa dipercepat telah digunakan seperti ini adalah hubungan keamanan pengusangan.
  • Pengaturan CACHE_BACKEND akan dipindahkan. Tembolok backend harus ditentukan di pengaturan CACHES.

1.4

Lihat Catatan terbitan Django 1.2 untuk lebih rinci di perubahan ini.

  • CsrfResponseMiddleware dan CsrfMiddleware akan dipindahkan. Gunakan etiket cetakan {% csrf_token %} didalam formulir untuk mengadakan perlindungan CSRF. CsrfViewMiddleware tetap dan diadakan secara awal.
  • Impor lama untuk fungsi CSRF (django.contrib.csrf.*), yang dipindahkan ke inti di 1.2, akan dipindahkan.
  • Modul django.contrib.gis.db.backend akan dipindahkan mendukung backend khusus.
  • SMTPConnection akan dipindahkan mendukung API backend Email umum.
  • Fungsi pembangkitan SQL banyak ke banyak pada backend basisdata akan dipindahkan.
  • Kemampuan menggunakan keluarga DATABASE_* dari pengaturan tingkat-atas untuk menentukan hubungan basisdata akan dipindahkan.
  • Kemampuan menggunakan catatan stenografi untuk menentukan backend basisdata (yaitu, sqlite3 daripada django.db.backends.sqlite3) akan dipindahkan.
  • Cara get_db_prep_save, get_db_prep_value dan get_db_prep_lookup akan mempunyai dukungan banyak basisdata.
  • Model Message (di django.contrib.auth), pengelola terhubungnya di model User (user.message_set), dan cara-cara terkait (user.message_set.create() dan user.get_and_delete_messages()), akan dipindahkan. messages framework harus digunakan sebagai gantinya. Variabel messages terhubung dikembalikan oleh pengolah konteks asli akan juga dipindahkan. Catat bahwa ini berarti bahwa aplikasi admin akan bergantung pada pengolah konteks pesan.
  • Backend otentifikasi akan butuh mendukung parameter obj untuk pemeriksaan perizinan. Atribut supports_object_permissions akan tidak lagi dicentang dan dapat dipindahkan dari backend penyesuaian.
  • Backend otentifikasi akan butuh mendukung kelas AnonymousUser dilewatkan ke semua cara berurusan dengan perizinan. Variabel supports_anonymous_user tidak lagi dicentang dan dapat dipindahkan dari backend penyesuaian.
  • Kemampuan menentukan pemuat cetakan callable daripada kelas Loader akan dipindahkan, seperti yang akan fungsi load_template_source yang disertakan dengan pemuat cetakan pasang tetap untuk kesesuaian kebelakang.
  • django.utils.translation.get_date_formats() dan django.utils.translation.get_partial_date_formats(). Fungsi ini telah dipindahkan; gunakan locale-aware django.utils.formats.get_format() untuk mendapatkan bentuk yang sesuai.
  • Dalam django.forms.fields, ketetapan: DEFAULT_DATE_INPUT_FORMATS, DEFAULT_TIME_INPUT_FORMATS dan DEFAULT_DATETIME_INPUT_FORMATS akan dipindahkan. Gunakan django.utils.formats.get_format() untuk mendapatkan bentuk yang sesuai.
  • Kemampuan menggunakan percobaan berbasis-fungsi akan dipindahkan, bersama dengan penjalan percobaan django.test.simple.run_tests().
  • Tampilan views.feed() dan kelas feeds.Feed di django.contrib.syndication akan dipindahkan. Tampilan berbasis-kelas views.Feed harus digunakan sebagai gantinya.
  • django.core.context_processors.auth. Terbitan ini akan memindahkan cara lama dalam mendukung cara baru di django.contrib.auth.context_processors.auth.
  • Backend basisdata postgresql akan dipindahkan, gunakan backend postgresql_psycopg2 sebagai gantinya.
  • kode bahasa no akan dipindahkan dan telah diganti oleh kode bahasa nb.
  • Backend otentifikasi akan butuh menentukan atrobut boolean supports_inactive_user sampai versi 1.5 ketika dia akan dianggap bahwa semua backend akan menangani pengguna tidak aktif.
  • django.db.models.fields.XMLField akan dipindahkan. Ini telah diusangkan sebagai bagian dari terbitan 1.3. Jadwal pengusangan dipercepat telah digunakan karena bidang belum melakukan aturan apapun lebih dari itu dari TextField sederhana sejak perpindahan dari oldforms. Semua penggunaan dari XMLField dapat diganti dengan TextField.
  • Parameter mixin tidak terdokumentasi pada cara open() dari django.core.files.storage.Storage (dan subkelas) akan dipindahkan.

1.3

Lihat Catatan terbitan Django 1.1 untuk rincian lebih pada perubahan ini.

  • AdminSite.root(). Cara ini dari mengaitkan URL admin akan dipindahkan mendukung termasuk admin.site.urls.
  • Backend otentifikasi butuh menentukan atribut boolean supports_object_permissions dan supports_anonymous_user sampai versi 1.4, dimana menunjuk itu akan dianggap bahwa semua backend akan mendukung pilihan ini.
Back to Top