{"title":"Menimpa cetakan","version":"2.0","locale":"id","docname":"howto/overriding-templates","url":"/id/2.0/howto/overriding-templates/","canonical":"https://djangodocs.dev/id/2.0/howto/overriding-templates/","summary":"Dalam proyek anda, anda mungkin ingin menimpa sebuah cetakan dalam aplikasi Django lain, apakai itu berupa aplikasi pihak-ketiga atau aplikasi bantuan seperti…","html":"<h1>Menimpa cetakan<a class=\"heading-anchor\" href=\"#overriding-templates\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<p>Dalam proyek anda, anda mungkin ingin menimpa sebuah cetakan dalam aplikasi Django lain, apakai itu berupa aplikasi pihak-ketiga atau aplikasi bantuan seperti <code class=\"docutils literal notranslate\"><span class=\"pre\">django.contrib.admin</span></code>. Anda dapat antara menaruh cetakan menimpa dalam direktori cetakan proyek anda atau dalam sebuah direktori cetakan aplikasi.</p>\n<p>Jika anda mempunyai aplikasi dan direktori cetakan proyek yang kedua kandungan menimpa, pemuat cetakan Django awalan akan mencoba memuat cetakan dari direktori tingkat-proyek dahulu. Dengan kata lain, <code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">DIRS</span> <span class=\"pre\">1</span></code> dicari sebelum <code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">APP_DIRS</span> <span class=\"pre\">2</span></code>.</p>\n<section id=\"overriding-from-the-project-s-templates-directory\">\n<h2>Menimpa dari direktori cetakan proyek<a class=\"heading-anchor\" href=\"#overriding-from-the-project-s-templates-directory\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Pertama, kami akan menjelajahi menimpa cetakan dengan membuat cetakan pengganti dalam direktori cetakan proyek anda.</p>\n<p>Mari kita katakan anda sedang mencoba menimpa cetakan untuk aplikasi pihak-ketiga disebut <code class=\"docutils literal notranslate\"><span class=\"pre\">blog</span></code>, yang menyediakan cetakan <code class=\"docutils literal notranslate\"><span class=\"pre\">blog/post.html</span></code> dan <code class=\"docutils literal notranslate\"><span class=\"pre\">blog/list.html</span></code>. Pengaturan terkait untuk proyek anda akan terlihat seperti:</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\">import</span><span class=\"w\"> </span><span class=\"nn\">os</span>\n\n<span class=\"n\">BASE_DIR</span> <span class=\"o\">=</span> <span class=\"n\">os</span><span class=\"o\">.</span><span class=\"n\">path</span><span class=\"o\">.</span><span class=\"n\">dirname</span><span class=\"p\">(</span><span class=\"n\">os</span><span class=\"o\">.</span><span class=\"n\">path</span><span class=\"o\">.</span><span class=\"n\">dirname</span><span class=\"p\">(</span><span class=\"n\">os</span><span class=\"o\">.</span><span class=\"n\">path</span><span class=\"o\">.</span><span class=\"n\">abspath</span><span class=\"p\">(</span><span class=\"vm\">__file__</span><span class=\"p\">)))</span>\n\n<span class=\"n\">INSTALLED_APPS</span> <span class=\"o\">=</span> <span class=\"p\">[</span>\n    <span class=\"o\">...</span><span class=\"p\">,</span>\n    <span class=\"s1\">&#39;blog&#39;</span><span class=\"p\">,</span>\n    <span class=\"o\">...</span><span class=\"p\">,</span>\n<span class=\"p\">]</span>\n\n<span class=\"n\">TEMPLATES</span> <span class=\"o\">=</span> <span class=\"p\">[</span>\n    <span class=\"p\">{</span>\n        <span class=\"s1\">&#39;BACKEND&#39;</span><span class=\"p\">:</span> <span class=\"s1\">&#39;django.template.backends.django.DjangoTemplates&#39;</span><span class=\"p\">,</span>\n        <span class=\"s1\">&#39;DIRS&#39;</span><span class=\"p\">:</span> <span class=\"p\">[</span><span class=\"n\">os</span><span class=\"o\">.</span><span class=\"n\">path</span><span class=\"o\">.</span><span class=\"n\">join</span><span class=\"p\">(</span><span class=\"n\">BASE_DIR</span><span class=\"p\">,</span> <span class=\"s1\">&#39;templates&#39;</span><span class=\"p\">)],</span>\n        <span class=\"s1\">&#39;APP_DIRS&#39;</span><span class=\"p\">:</span> <span class=\"kc\">True</span><span class=\"p\">,</span>\n        <span class=\"o\">...</span>\n    <span class=\"p\">},</span>\n<span class=\"p\">]</span>\n</code></pre></div>\n<p>Pengaturan <a class=\"reference internal\" href=\"/id/2.0/ref/settings/#std-setting-TEMPLATES\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">TEMPLATES</span></code></a> dan <code class=\"docutils literal notranslate\"><span class=\"pre\">BASE_DIR</span></code> akan sudah ada jika anda membuat proyek anda menggunakan cetakan proyek awalan. Pengaturan yang butuh dirubah adalah <code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">DIRS1</span></code>.</p>\n<p>Pengaturan ini menganggap anda mempunyai sebuah direktori <code class=\"docutils literal notranslate\"><span class=\"pre\">templates</span></code> dalam akar dari proyek anda. Untuk menimpa cetakan untuk aplikasi <code class=\"docutils literal notranslate\"><span class=\"pre\">blog</span></code>, buat sebuah folder dalam direktori <code class=\"docutils literal notranslate\"><span class=\"pre\">templates</span></code>, dan tambah berkas-berkas cetakan ke folder itu.</p>\n<div class=\"code-block\" data-language=\"none\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">None</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=\"None code\"><code>templates/\n    blog/\n        list.html\n        post.html\n</code></pre></div>\n<p>Pemuat cetakan pertama mencari untuk cetakan dalam direktori <code class=\"docutils literal notranslate\"><span class=\"pre\">DIRS</span></code>. ketika tampilan dalam aplikasi <code class=\"docutils literal notranslate\"><span class=\"pre\">blog</span></code> untuk cetakan <code class=\"docutils literal notranslate\"><span class=\"pre\">blog/post.html</span></code> dan <code class=\"docutils literal notranslate\"><span class=\"pre\">blog/list.html</span></code>, pemuat akan mengembalikan berkas-berkas anda telah buat.</p>\n</section>\n<section id=\"overriding-from-an-app-s-template-directory\">\n<h2>Menimpa dari direktori cetakan aplikasi<a class=\"heading-anchor\" href=\"#overriding-from-an-app-s-template-directory\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Sejak anda sedang menimpa cetakan bertempat di luar dari satu dari aplikasi proyek anda, itu adalah lebih umum menggunakan metode pertama dan menaruh cetakan penimpaan dalam sebuah folder cetakan proyek. Jika anda memilih, bagaimanapun, itu juga memungkinkan menaruh penimpaan dalam sebuah direktori cetakan aplikasi.</p>\n<p>Pertama, pastikan pengaturan cetakan anda memeriksa didalam direktori aplikasi:</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=\"n\">TEMPLATES</span> <span class=\"o\">=</span> <span class=\"p\">[</span>\n    <span class=\"p\">{</span>\n        <span class=\"o\">...</span><span class=\"p\">,</span>\n        <span class=\"s1\">&#39;APP_DIRS&#39;</span><span class=\"p\">:</span> <span class=\"kc\">True</span><span class=\"p\">,</span>\n        <span class=\"o\">...</span>\n    <span class=\"p\">},</span>\n<span class=\"p\">]</span>\n</code></pre></div>\n<p>Jika anda ingin menaruh cetakan penimpaan dalam sebuah aplikasi disebut <code class=\"docutils literal notranslate\"><span class=\"pre\">myapp</span></code> dan cetakan untuk menima bernama <code class=\"docutils literal notranslate\"><span class=\"pre\">blog/list.html</span></code> dan <code class=\"docutils literal notranslate\"><span class=\"pre\">blog/post.html</span></code>, kemudian struktur direktori anda akan terlihat seperti:</p>\n<div class=\"code-block\" data-language=\"none\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">None</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=\"None code\"><code>myapp/\n    templates/\n        blog/\n            list.html\n            post.html\n</code></pre></div>\n<p>Dengan <code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">APP_DIRS1</span></code> disetel menjadi <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>, pemuat cetakan akan terlihat dalam direktori cetakan aplikasi dan menemukan cetakan.</p>\n</section>","rootId":"overriding-templates","toc":[{"title":"Menimpa dari direktori cetakan proyek","anchor":"overriding-from-the-project-s-templates-directory","children":[]},{"title":"Menimpa dari direktori cetakan aplikasi","anchor":"overriding-from-an-app-s-template-directory","children":[]}],"breadcrumbs":[{"docname":"howto/index","title":"Panduan \"Bagaimana\"","url":"/id/2.0/howto/"}],"prev":{"docname":"howto/outputting-pdf","title":"Mengeluarkan PDF dengan Django","url":"/id/2.0/howto/outputting-pdf/"},"next":{"docname":"howto/static-files/index","title":"Mengelola berkas statis (sebagai contoh gambar, JavaScript, CSS)","url":"/id/2.0/howto/static-files/"},"formats":{"html":"/id/2.0/howto/overriding-templates/","markdown":"/id/2.0/howto/overriding-templates.md","json":"/id/2.0/howto/overriding-templates.json"},"source":"https://github.com/django/django/blob/stable/2.0.x/docs/howto/overriding-templates.txt","official":"https://docs.djangoproject.com/id/2.0/howto/overriding-templates/","inVersions":["6.1","6.0","5.2","5.1","5.0","4.2","4.1","4.0","3.2","3.1","3.0","2.2","2.1","2.0","1.11"],"inLocales":["en","zh-hans","fr","ja","id","pt-br","ko","es","el","pl"]}