{"title":"Radhairc Tógtha","version":"6.0","locale":"ga","docname":"ref/views","url":"/ga/6.0/ref/views/","canonical":"https://djangodocs.dev/ga/6.0/ref/views/","summary":"Déantar roinnt de na tuairimí ionsuite Django a dhoiciméadú in:doc: /topics/http/views chomh maith le háiteanna eile sa doiciméadú. Freastal ar chomhaid atá i bhfor…","html":"<span id=\"built-in-views\"></span><h1>Radhairc Tógtha<a class=\"heading-anchor\" href=\"#module-django.views\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<p>Déantar roinnt de na tuairimí ionsuite Django a dhoiciméadú in:doc: /topics/http/views chomh maith le háiteanna eile sa doiciméadú.</p>\n<section id=\"serving-files-in-development\">\n<h2>Freastal ar chomhaid atá i bhfor<a class=\"heading-anchor\" href=\"#serving-files-in-development\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.views.static.serve\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">static.</span></span><span class=\"sig-name descname\"><span class=\"pre\">serve</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">request</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">path</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">document_root</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">show_indexes</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">False</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.static.serve\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>D'fhéadfadh go mbeadh comhaid seachas sócmhainní statacha do thionscadail ar mhaith leat, ar mhaithe le háisiúlacht, go bhfreastal Django duit i bhforbairt áitiúil. Is féidir an dearcadh: Func: ~django.views.static.serve a úsáid chun freastal ar aon eolaire a thugann tú dó. (Níl an dearcadh seo ** cruaite le húsáid táirgeachta agus níor cheart é a úsáid ach mar chúnamh forbartha; ba cheart duit na comhaid seo a sheirbheáil i dtáirgeadh ag baint úsáide as fíor-fhreastalaí gréasáin tosaigh).</p>\n<p>Is é an sampla is dóichí ná ábhar uaslódáilte ón úsáideoir in:setting: MEDIA_ROOT. Tá <code class=\"docutils literal notranslate\"><span class=\"pre\">django.contrib.staticfiles</span></code> beartaithe le haghaidh sócmhainní statacha agus níl aon láimhseáil ionsuite aige do chomhaid uaslódáilte úsáideora, ach is féidir leat Django freastal ar do thú:setting: MEDIA_ROOT trí rud éigin mar seo a chur le do URLConf:</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.conf</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">settings</span>\n<span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.urls</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">re_path</span>\n<span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.views.static</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">serve</span>\n\n<span class=\"c1\"># ... the rest of your URLconf goes here ...</span>\n\n<span class=\"k\">if</span> <span class=\"n\">settings</span><span class=\"o\">.</span><span class=\"n\">DEBUG</span><span class=\"p\">:</span>\n    <span class=\"n\">urlpatterns</span> <span class=\"o\">+=</span> <span class=\"p\">[</span>\n        <span class=\"n\">re_path</span><span class=\"p\">(</span>\n            <span class=\"sa\">r</span><span class=\"s2\">&quot;^media/(?P&lt;path&gt;.*)$&quot;</span><span class=\"p\">,</span>\n            <span class=\"n\">serve</span><span class=\"p\">,</span>\n            <span class=\"p\">{</span>\n                <span class=\"s2\">&quot;document_root&quot;</span><span class=\"p\">:</span> <span class=\"n\">settings</span><span class=\"o\">.</span><span class=\"n\">MEDIA_ROOT</span><span class=\"p\">,</span>\n            <span class=\"p\">},</span>\n        <span class=\"p\">),</span>\n    <span class=\"p\">]</span>\n</code></pre></div>\n<p>Tabhair faoi deara, glacann an snippet le do: setting: tá luach <code class=\"docutils literal notranslate\"><span class=\"pre\">'media/'</span></code> ag MEDIA_URL. Glaofar sé seo ar an amharc: :func: ~django.views.static.serve, ag dul sa chosán ón URLConf agus an paraiméadar (riachtanach) <code class=\"docutils literal notranslate\"><span class=\"pre\">document_root</span></code>.</p>\n<p>Ós rud é go bhféadfadh sé a bheith beagán deacair an patrún URL seo a shainiú, seolann Django le feidhm chúntóra beag URL: func: ~django.conf.urls.static.static a ghlacann mar pharaiméadair an réimír amhail: setting: MEDIA_URL agus cosán ponctha chuig radharc, mar shampla <a href=\"#id1\"><span class=\"problematic\" id=\"id2\">``</span></a>django.views.static.serve'<a href=\"#id3\"><span class=\"problematic\" id=\"id4\">`</span></a>. Cuirfear aon pharaiméadar feidhme eile ar aghaidh go trédhearcach chuig an radharc.</p>\n</section>\n<section id=\"error-views\">\n<span id=\"id1\"></span><h2>Tuairimí earráide<a class=\"heading-anchor\" href=\"#error-views\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Tagann Django le cúpla tuairim de réir réamhshocraithe chun earráidí HTTP a láimhseáil. Chun iad seo a shárú le do thuairimí saincheaptha féin, féach:ref: customizing-error-views.</p>\n<section id=\"the-404-page-not-found-view\">\n<span id=\"http-not-found-view\"></span><h3>An radharc 404 (ní aimsíodh an leathanach)<a class=\"heading-anchor\" href=\"#the-404-page-not-found-view\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.views.defaults.page_not_found\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">defaults.</span></span><span class=\"sig-name descname\"><span class=\"pre\">page_not_found</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">request</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">exception</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">template_name</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">'404.html'</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.defaults.page_not_found\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>Nuair a ardaíonn tú: exc: ~django.http.http404 ó laistigh de radharc, luchtaíonn Django dearcadh speisialta atá dírithe ar earráidí 404 a láimhseáil. De réir réamhshocraithe, is é an view:func: django.views.defaults.page_not_found, a tháirgeann teachtaireacht “Not Found” nó a luchtaíonn agus a léiríonn an teimpléad <code class=\"docutils literal notranslate\"><span class=\"pre\">404.html</span></code> má chruthaigh tú é i do eolaire teimpléad fréimhe.</p>\n<p>Cuirfidh an dearcadh réamhshocraithe 404 dhá athróg chuig an teimpléad: request_path`, arb é an URL a raibh an earráid mar thoradh air, agus <code class=\"docutils literal notranslate\"><span class=\"pre\">exception</span></code>, ar léiriú úsáideach é ar an eisceacht a spreag an dearcadh (m.sh. ina bhfuil aon teachtaireacht a chuirtear chuig Http404 ar leith).</p>\n<p>Trí rud le tabhairt faoi deara faoi 404 tuairimí:</p>\n<ul class=\"simple\">\n<li><p>Tugtar ar an radharc 404 freisin mura bhfaigheann Django meaitseáil tar éis gach abairt rialta sa URLConf a sheiceáil.</p></li>\n<li><p>Tá an radharc 404 ag rith a:class: ~django.template.requestContext agus beidh rochtain aige ar athróga a sholáthraíonn do phróiseálaithe comhthéacs teimpléad (m.sh. MEDIA_URL`).</p></li>\n<li><p>Má tá: Socrú: “DEBUG” socraithe go <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code> (i do mhodúl socruithe), ansin ní úsáidfear do radharc 404 riamh, agus taispeánfar do URLConf ina ionad sin, le roinnt faisnéise dífhabhtaithe.</p></li>\n</ul>\n</section>\n<section id=\"the-500-server-error-view\">\n<span id=\"http-internal-server-error-view\"></span><h3>An radharc 500 (earráid freastalaí)<a class=\"heading-anchor\" href=\"#the-500-server-error-view\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.views.defaults.server_error\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">defaults.</span></span><span class=\"sig-name descname\"><span class=\"pre\">server_error</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">request</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">template_name</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">'500.html'</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.defaults.server_error\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>Ar an gcaoi chéanna, déanann Django iompar cásanna speisialta i gcás earráidí rith sa chód amharc. Má bhíonn eisceacht mar thoradh ar radharc, glaoifidh Django, de réir réamhshocraithe, ar an amharc <code class=\"docutils literal notranslate\"><span class=\"pre\">django.views.defaults.server_error</span></code>, a tháirgeann teachtaireacht “Earráid Freastalaí” nó a luchtaíonn agus a léiríonn an teimpléad <code class=\"docutils literal notranslate\"><span class=\"pre\">500.html</span></code> má chruthaigh tú é i d'eolaire teimpléad fréimhe.</p>\n<p>Ní chuireann an dearcadh réamhshocraithe 500 aon athróg chuig an teimpléad <code class=\"docutils literal notranslate\"><span class=\"pre\">500.html</span></code> agus déantar é le Context` folamh chun an seans go mbeidh earráidí breise a laghdú.</p>\n<p>Má tá: Socrú: “DEBUG” socraithe go <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code> (i do mhodúl socruithe), ansin ní úsáidfear do radharc 500 riamh, agus taispeánfar an rianaireacht ina ionad sin, le roinnt faisnéise dífhabhtaithe.</p>\n</section>\n<section id=\"the-403-http-forbidden-view\">\n<span id=\"http-forbidden-view\"></span><h3>An radharc 403 (HTTP Toirmiscthe)<a class=\"heading-anchor\" href=\"#the-403-http-forbidden-view\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.views.defaults.permission_denied\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">defaults.</span></span><span class=\"sig-name descname\"><span class=\"pre\">permission_denied</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">request</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">exception</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">template_name</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">'403.html'</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.defaults.permission_denied\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>Sa chomh céanna leis na tuairimí 404 agus 500, tá dearcadh ag Django 403 earráid Toirmiscthe a láimhseáil. Má bhíonn eisceacht 403 mar thoradh ar radharc ansin glaoifidh Django, de réir réamhshocraithe, ar an radharc <code class=\"docutils literal notranslate\"><span class=\"pre\">django.views.defaults.permission_denied</span></code>.</p>\n<p>Luchtaíonn agus tugann an radharc seo an teimpléad <code class=\"docutils literal notranslate\"><span class=\"pre\">403.html</span></code> i do eolaire teimpléad fréimhe, nó mura bhfuil an comhad seo ann, freastalaíonn an téacs “403 Toirmiscthe” ina ionad sin, mar: rfc: 9110 #section -15.5.4 (an Sonraíocht HTTP 1.1). Tá <a href=\"#id1\"><span class=\"problematic\" id=\"id2\">``</span></a>eisceacht' sa chomhthéacs teimpléid, arb é sin an léiriú teaghrán ar an eisceacht a spreag an dearcadh.</p>\n<p>Tá eisceacht a spreagtar <code class=\"docutils literal notranslate\"><span class=\"pre\">django.views.defaults.permission_denied</span></code> ag a:exc: ~django.core.exceptions.permissionDenied. Chun rochtain a dhiúltú i radharc is féidir leat cód mar seo a úsáid:</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.core.exceptions</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">PermissionDenied</span>\n\n\n<span class=\"k\">def</span><span class=\"w\"> </span><span class=\"nf\">edit</span><span class=\"p\">(</span><span class=\"n\">request</span><span class=\"p\">,</span> <span class=\"n\">pk</span><span class=\"p\">):</span>\n    <span class=\"k\">if</span> <span class=\"ow\">not</span> <span class=\"n\">request</span><span class=\"o\">.</span><span class=\"n\">user</span><span class=\"o\">.</span><span class=\"n\">is_staff</span><span class=\"p\">:</span>\n        <span class=\"k\">raise</span> <span class=\"n\">PermissionDenied</span>\n    <span class=\"c1\"># ...</span>\n</code></pre></div>\n</section>\n<section id=\"the-400-bad-request-view\">\n<span id=\"http-bad-request-view\"></span><h3>An radharc 400 (droch-iarratas)<a class=\"heading-anchor\" href=\"#the-400-bad-request-view\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.views.defaults.bad_request\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">defaults.</span></span><span class=\"sig-name descname\"><span class=\"pre\">bad_request</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">request</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">exception</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">template_name</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">'400.html'</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.defaults.bad_request\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>Similarly, Django has a view to handle 400 Bad Request errors.</p>\n<p>This view either produces a &quot;Bad Request&quot; message or loads and renders the\ntemplate <code class=\"docutils literal notranslate\"><span class=\"pre\">400.html</span></code> if you created it in your root template directory.\nIt returns with status code 400 indicating that the error condition was the\nresult of a client operation. By default, nothing related to the exception that\ntriggered the view is passed to the template context, as the exception message\nmight contain sensitive information like filesystem paths.</p>\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">django.views.defaults.bad_request</span></code> is triggered by a\n<a class=\"reference internal\" href=\"/ga/6.0/ref/exceptions/#django.core.exceptions.BadRequest\" title=\"django.core.exceptions.BadRequest\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">BadRequest</span></code></a> exception. Also, when a\n<a class=\"reference internal\" href=\"/ga/6.0/ref/exceptions/#django.core.exceptions.SuspiciousOperation\" title=\"django.core.exceptions.SuspiciousOperation\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">SuspiciousOperation</span></code></a> is raised in Django,\nit may be handled by a component of Django (for example resetting the session\ndata). If not specifically handled, Django will consider the current request a\n'bad request' instead of a server error, and handle it with <code class=\"docutils literal notranslate\"><span class=\"pre\">bad_request</span></code>.</p>\n<p>Ní úsáidtear tuairimí <code class=\"docutils literal notranslate\"><span class=\"pre\">bad_request</span></code> ach amháin nuair:setting: DEBUG <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code>.</p>\n</section>\n</section>","rootId":"module-django.views","toc":[{"title":"Freastal ar chomhaid atá i bhfor","anchor":"serving-files-in-development","children":[]},{"title":"Tuairimí earráide","anchor":"error-views","children":[{"title":"An radharc 404 (ní aimsíodh an leathanach)","anchor":"the-404-page-not-found-view","children":[]},{"title":"An radharc 500 (earráid freastalaí)","anchor":"the-500-server-error-view","children":[]},{"title":"An radharc 403 (HTTP Toirmiscthe)","anchor":"the-403-http-forbidden-view","children":[]},{"title":"An radharc 400 (droch-iarratas)","anchor":"the-400-bad-request-view","children":[]}]}],"breadcrumbs":[{"docname":"ref/index","title":"Tagairt API","url":"/ga/6.0/ref/"}],"prev":{"docname":"ref/validators","title":"Bailíochtóirí","url":"/ga/6.0/ref/validators/"},"next":{"docname":"misc/index","title":"Meta-dhoiciméadú agus ilghnéitheacht","url":"/ga/6.0/misc/"},"formats":{"html":"/ga/6.0/ref/views/","markdown":"/ga/6.0/ref/views.md","json":"/ga/6.0/ref/views.json"},"source":"https://github.com/django/django/blob/stable/6.0.x/docs/ref/views.txt","official":"https://docs.djangoproject.com/ga/6.0/ref/views/","inVersions":["6.1","6.0","5.2"],"inLocales":["en","sv","zh-hans","ga","fr","ja","id","it","pt-br","ko","es","el","pl"]}