An aip athatreoraitheLink to this heading
Tagann Django le feidhmchlár athatreoruithe roghnach. Ligeann sé duit atreoruithe a stóráil i mbunachar sonraí agus láimhseálann sé an t-atreorú duit. Úsáideann sé an cód stádas freagartha HTTP ``301 Bogtha go Buan ``de réir réamhshocraithe.
SuiteáilLink to this heading
Chun an aip atreoraithe a shuiteáil, lean na céimeanna seo:
Conas a oibríonn séLink to this heading
Cruthaíonn manage.py migrate tábla django_redirect i do bhunachar sonraí. Is tábla cuardaigh é seo le réimsí site_id, old_path` agus new_path.
Déanann an: Class: ~django.contrib.redirects.middleware.redirectFallbackMiddleWare an obair go léir. Gach uair a ardaíonn aon fheidhmchlár Django earráid 404, seiceálann an middleware seo an bunachar sonraí atreoraithe don URL iarrtha mar rogha dheiridh. Go sonrach, seiceálann sé athsheoladh leis an old_path` a thugtar le ID láithreáin a fhreagraíonn don socrú: setting: SITE_ID.
Má aimsíonn sé meaitseáil, agus mura bhfuil
new_pathfolamh, atreoraíonn sé chuignew_pathag baint úsáide as atreorú 301 (“Bogtha go Buan”). Is féidir leat subclass:class: ~django.contrib.redirects.middleware.redirectFallbackMiddleware agus set:attr: ~django.contrib.redirects.middleware.redirectFallbackmiddleware.response_redirect_class to:class: django.http.httpresponseredirect chun 302 Temporada a úsáid Atreorú arily` ina ionad sin.Má aimsíonn sé meaitseáil, agus má tá
new_pathfolamh, seolann sé ceannteideal HTTP 410 (“Done”) agus freagra folamh (gan ábhar).Mura bhfaigheann sé meaitseáil, leanann an t-iarratas á phróiseáil mar is gnách.
Ní ghníomhaítear an middleware ach ar feadh 404s - ní le haghaidh 500s nó freagraí ar aon chód stádais eile.
Tabhair faoi deara go bhfuil tábhacht ag ordú:setting: MIDDLEWARE. Go ginearálta, is féidir leat: class: ~django.contrib.redirects.middleware.redirectFallbackmiddleware a chur ag deireadh an liosta, toisc gur rogha deireanach é.
Le haghaidh tuilleadh eolais faoi middleware, léigh an:doc: middle</topics/http/middleware> ware docs.
Conas atreoruithe a chur leis, a athrú agus a scriosadhLink to this heading
Tríd an gcomhéadan riaracháinLink to this heading
Má tá an comhéadan riaracháin Django uathoibríoch curtha i ngníomh agat, ba chóir duit rannán “Atreoracha” a fheiceáil ar an leathanach innéacs riaracháin. Athsheoltóirí in eagar agus tú in eagar aon rud eile sa chóras in eagar.
Trí API PythonLink to this heading
- class models.RedirectLink to this definition
Léirítear athatreoruithe le caighdeán:doc: samhail Django, a chónaíonn in:source: django/contrib/redirects/models.py. </topics/db/models> Is féidir leat rochtain a fháil ar rudaí atreoraithe trí:doc: Bunachar sonraí D</topics/db/queries> jango API. Mar shampla:
>>> from django.conf import settings >>> from django.contrib.redirects.models import Redirect >>> # Add a new redirect. >>> redirect = Redirect.objects.create( ... site_id=1, ... old_path="/contact-us/", ... new_path="/contact/", ... ) >>> # Change a redirect. >>> redirect.new_path = "/contact-details/" >>> redirect.save() >>> redirect <Redirect: /contact-us/ ---> /contact-details/> >>> # Delete a redirect. >>> Redirect.objects.filter(site_id=1, old_path="/contact-us/").delete() (1, {'redirects.Redirect': 1})
Meán-earraíLink to this heading
- class middleware.RedirectFallbackMiddlewareLink to this definition
Is féidir leat na ranganna: :class: ~django.http.httpResponse a úsáideann an middleware a athrú trí fho-aicme de:class: ~django.contrib.redirects.middleware.redirectfallbackmiddleware a chruthú agus response_gone_class` agus/nó
response_redirect_class.- response_gone_classLink to this definition
An rang:class: ~django.http.httpResponse a úsáidtear nuair nach bhfaightear a:class: ~django.contrib.redirects.models.redirect don chosán iarrtha nó go bhfuil luach
new_pathbán aige.Réamhshocraithe chuig: aicme: ~django.http.httpResponseGone.
- response_redirect_classLink to this definition
An rang:class: ~django.http.httpResponse a láimhseálann an t-atreorú.
Réamhshocraithe chuig: aicme: ~django.http.httpResponsePermanentDirect.