{"title":"Bagaimana mengelola berkas statik (misalnya gambar, JavaScript, CSS)","version":"5.1","locale":"id","docname":"howto/static-files/index","url":"/id/5.1/howto/static-files/","canonical":"https://djangodocs.dev/id/5.1/howto/static-files/","summary":"Situs jaringan pada umumnya butuh melayani tambahan berkas-berkas seperti gambar, JavaScript, atau CSS. Di Django, kami mengacu pada berkas-berkas ini sebagai…","html":"<h1>Bagaimana mengelola berkas statik (misalnya gambar, JavaScript, CSS)<a class=\"heading-anchor\" href=\"#how-to-manage-static-files-e-g-images-javascript-css\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<p>Situs jaringan pada umumnya butuh melayani tambahan berkas-berkas seperti gambar, JavaScript, atau CSS. Di Django, kami mengacu pada berkas-berkas ini sebagai &quot;berkas-berkas tetap&quot;. Django menyediakan <a class=\"reference internal\" href=\"/id/5.1/ref/contrib/staticfiles/#module-django.contrib.staticfiles\" title=\"django.contrib.staticfiles: An app for handling static files.\"><code class=\"xref py py-mod docutils literal notranslate\"><span class=\"pre\">django.contrib.staticfiles</span></code></a> untuk membantu anda mengelola mereka.</p>\n<p>Halaman ini menggambarkan bagaimana anda dapat melayani berkas statis ini.</p>\n<section id=\"configuring-static-files\">\n<h2>Mengkonfigurasi berkas-berkas tetap<a class=\"heading-anchor\" href=\"#configuring-static-files\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<ol class=\"arabic\">\n<li><p>Pastikan bahwa <code class=\"docutils literal notranslate\"><span class=\"pre\">django.contrib.staticfiles</span></code> disertakan dalam <a class=\"reference internal\" href=\"/id/5.1/ref/settings/#std-setting-INSTALLED_APPS\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">INSTALLED_APPS</span></code></a> anda.</p></li>\n<li><p>Di berkas pengaturan anda, tentukan <a class=\"reference internal\" href=\"/id/5.1/ref/settings/#std-setting-STATIC_URL\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">STATIC_URL</span></code></a>, sebagai contoh:</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\">STATIC_URL</span> <span class=\"o\">=</span> <span class=\"s2\">&quot;static/&quot;</span>\n</code></pre></div>\n</li>\n<li><p>Di cetakan anda, gunakan etiket cetakan <a class=\"reference internal\" href=\"/id/5.1/ref/templates/builtins/#std-templatetag-static\"><code class=\"xref std std-ttag docutils literal notranslate\"><span class=\"pre\">static</span></code></a> untuk membangun URL untuk jalur relatif yang diberikan menggunakan nama lain <code class=\"docutils literal notranslate\"><span class=\"pre\">staticfiles</span></code> <a class=\"reference internal\" href=\"/id/5.1/ref/settings/#std-setting-STORAGES\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">STORAGES</span></code></a> yang sudah dikonfigurasi.</p>\n<div class=\"code-block\" data-language=\"html+django\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Django template</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=\"Django template code\"><code><span class=\"cp\">{%</span> <span class=\"k\">load</span> <span class=\"nv\">static</span> <span class=\"cp\">%}</span>\n<span class=\"p\">&lt;</span><span class=\"nt\">img</span> <span class=\"na\">src</span><span class=\"o\">=</span><span class=\"s\">&quot;</span><span class=\"cp\">{%</span> <span class=\"k\">static</span> <span class=\"s1\">&#39;my_app/example.jpg&#39;</span> <span class=\"cp\">%}</span><span class=\"s\">&quot;</span> <span class=\"na\">alt</span><span class=\"o\">=</span><span class=\"s\">&quot;My image&quot;</span><span class=\"p\">&gt;</span>\n</code></pre></div>\n</li>\n<li><p>Simpan berkas tetap di pelipat disebut <code class=\"docutils literal notranslate\"><span class=\"pre\">static</span></code> di aplikasi anda. Sebagai contoh <code class=\"docutils literal notranslate\"><span class=\"pre\">my_app/static/my_app/example.jpg</span></code>.</p></li>\n</ol>\n<aside class=\"admonition-serving-the-files admonition\">\n<p class=\"admonition-title\">Melayani berkas-berkas</p>\n<p>Dalam tambahan pada langkah-langkah konfigurasi ini, anda akan juga butuh untuk melayani berkas-berkas tetap.</p>\n<p>Selama pengembangan, jika anda menggunakan <a class=\"reference internal\" href=\"/id/5.1/ref/contrib/staticfiles/#module-django.contrib.staticfiles\" title=\"django.contrib.staticfiles: An app for handling static files.\"><code class=\"xref py py-mod docutils literal notranslate\"><span class=\"pre\">django.contrib.staticfiles</span></code></a>, ini akan dilakukan otomatis oleh <a class=\"reference internal\" href=\"/id/5.1/ref/django-admin/#django-admin-runserver\"><code class=\"xref std std-djadmin docutils literal notranslate\"><span class=\"pre\">runserver</span></code></a> ketika <a class=\"reference internal\" href=\"/id/5.1/ref/settings/#std-setting-DEBUG\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">DEBUG</span></code></a> disetel ke <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code> (lihat <a class=\"reference internal\" href=\"/id/5.1/ref/contrib/staticfiles/#django.contrib.staticfiles.views.serve\" title=\"django.contrib.staticfiles.views.serve\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">django.contrib.staticfiles.views.serve()</span></code></a>).</p>\n<p>Cara ini adalah <strong>terlalu tidak efesien</strong> dan mungkin <strong>tidak aman</strong>, jadi dia <strong>tidak cocok untuk produksi</strong>.</p>\n<p>Lihat <a class=\"reference internal\" href=\"/id/5.1/howto/static-files/deployment/\"><span class=\"doc\">Bagaimana menyebarkan berkas tetap</span></a> untuk strategi yang sesuai untuk melayani berkas-berkas tetap dalam lingkungan produksi.</p>\n</aside>\n<p>Proyek anda mungkin juga mempunyai aset tetap yang tidak diikat pada aplikasi khusus. Dalam tambahan untuk menggunakan direktori <code class=\"docutils literal notranslate\"><span class=\"pre\">static/</span></code> didalam aplikasi anda, anda dapat menentukan sebuah daftar direktori (<a class=\"reference internal\" href=\"/id/5.1/ref/settings/#std-setting-STATICFILES_DIRS\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">STATICFILES_DIRS</span></code></a>)  di berkas pengaturan anda dimana Django akan juga mencari untuk berkas-berkas tetap. Sebagai contoh:</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\">STATICFILES_DIRS</span> <span class=\"o\">=</span> <span class=\"p\">[</span>\n    <span class=\"n\">BASE_DIR</span> <span class=\"o\">/</span> <span class=\"s2\">&quot;static&quot;</span><span class=\"p\">,</span>\n    <span class=\"s2\">&quot;/var/www/static/&quot;</span><span class=\"p\">,</span>\n<span class=\"p\">]</span>\n</code></pre></div>\n<p>Lihat dokumentasi untuk pengaturan <a class=\"reference internal\" href=\"/id/5.1/ref/settings/#std-setting-STATICFILES_FINDERS\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">STATICFILES_FINDERS</span></code></a> untuk rincian pada bagaimana <code class=\"docutils literal notranslate\"><span class=\"pre\">staticfiles</span></code> menemukan berkas-berkas anda.</p>\n<aside class=\"admonition-static-file-namespacing admonition\">\n<p class=\"admonition-title\">Namespacing berkas statis</p>\n<p>Sekarang kami <em>mungkin</em> bisa lolos dengan menaruh berkas statis langsung dalam <code class=\"docutils literal notranslate\"><span class=\"pre\">my_app/static/</span></code> (daripada membuat subdirektori my_app` lain), tetapi itu merupakan ide buruk. Django akan menggunakan berkas statis pertama menemukan nama yang cocok, dan jika anda memiliki berkas statis dengan nama sama dalam aplikasi <em>berbeda</em>, Django tidak akan dapat membedakan diantara mereka. Kami butuh dapat menunjuk Django pada satu yg benar, dan cara terbaik memastikan ini dengan melakukan <em>namespace</em> mereka. Itu dia, dengan menaruh berkas statis tersebut dalam direktori <em>lain</em> dinamai untuk aplikasi itu sendiri.</p>\n<p>Anda dapat me-namespace aset statis di <a class=\"reference internal\" href=\"/id/5.1/ref/settings/#std-setting-STATICFILES_DIRS\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">STATICFILES_DIRS</span></code></a> by specifying <a class=\"reference internal\" href=\"/id/5.1/ref/settings/#staticfiles-dirs-prefixes\"><span class=\"std std-ref\">prefixes</span></a>.</p>\n</aside>\n</section>\n<section id=\"serving-static-files-during-development\">\n<span id=\"serving-static-files-in-development\"></span><h2>Melayani berkas-berkas tetap selama pengembangan<a class=\"heading-anchor\" href=\"#serving-static-files-during-development\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Jika anda menggunakan <a class=\"reference internal\" href=\"/id/5.1/ref/contrib/staticfiles/#module-django.contrib.staticfiles\" title=\"django.contrib.staticfiles: An app for handling static files.\"><code class=\"xref py py-mod docutils literal notranslate\"><span class=\"pre\">django.contrib.staticfiles</span></code></a> seperti yang dijelaskan diatas, <a class=\"reference internal\" href=\"/id/5.1/ref/django-admin/#django-admin-runserver\"><code class=\"xref std std-djadmin docutils literal notranslate\"><span class=\"pre\">runserver</span></code></a> akan melakukan ini secara otomatis ketika <a class=\"reference internal\" href=\"/id/5.1/ref/settings/#std-setting-DEBUG\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">DEBUG</span></code></a> disetel ke <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>. Jika anda tidak mempunyai <code class=\"docutils literal notranslate\"><span class=\"pre\">django.contrib.staticfiles</span></code> di <a class=\"reference internal\" href=\"/id/5.1/ref/settings/#std-setting-INSTALLED_APPS\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">INSTALLED_APPS</span></code></a>,  anda dapat masih secara manual melayani berkas-berkas tetap menggunakan tampilan <a class=\"reference internal\" href=\"/id/5.1/ref/views/#django.views.static.serve\" title=\"django.views.static.serve\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">django.views.static.serve()</span></code></a>.</p>\n<p>Ini tidak cocok untuk penggunaan produksi! Untuk beberapa strategi penyebaran umum, lihat <a class=\"reference internal\" href=\"/id/5.1/howto/static-files/deployment/\"><span class=\"doc\">Bagaimana menyebarkan berkas tetap</span></a>.</p>\n<p>Sebagai contoh, jika <a class=\"reference internal\" href=\"/id/5.1/ref/settings/#std-setting-STATIC_URL\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">STATIC_URL</span></code></a> anda ditentukan sebagai <code class=\"docutils literal notranslate\"><span class=\"pre\">static/</span></code>, anda dapat melakukan ini dengan menambahkan potongan berikut ke <code class=\"docutils literal notranslate\"><span class=\"pre\">urls.py</span></code> anda:</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.conf.urls.static</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">static</span>\n\n<span class=\"n\">urlpatterns</span> <span class=\"o\">=</span> <span class=\"p\">[</span>\n    <span class=\"c1\"># ... the rest of your URLconf goes here ...</span>\n<span class=\"p\">]</span> <span class=\"o\">+</span> <span class=\"n\">static</span><span class=\"p\">(</span><span class=\"n\">settings</span><span class=\"o\">.</span><span class=\"n\">STATIC_URL</span><span class=\"p\">,</span> <span class=\"n\">document_root</span><span class=\"o\">=</span><span class=\"n\">settings</span><span class=\"o\">.</span><span class=\"n\">STATIC_ROOT</span><span class=\"p\">)</span>\n</code></pre></div>\n<aside class=\"admonition admonition-note\" role=\"note\">\n<p class=\"admonition-title\">Catatan</p>\n<p>Fungsi pembantu ini hanya bekerja dalam suasana mencari kesalahan dan hanya jika awalan diberikan adalah lokal (misalnya <code class=\"docutils literal notranslate\"><span class=\"pre\">static/</span></code>) dan bukan URL (misalnya <code class=\"docutils literal notranslate\"><span class=\"pre\">http://static.example.com/</span></code>).</p>\n<p>Juga fungsi pembantu ini hanya melayani folder <a class=\"reference internal\" href=\"/id/5.1/ref/settings/#std-setting-STATIC_ROOT\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">STATIC_ROOT</span></code></a> sebenarnya; dia tidak menampilkan berkas-berkas tetap seperti <a class=\"reference internal\" href=\"/id/5.1/ref/contrib/staticfiles/#module-django.contrib.staticfiles\" title=\"django.contrib.staticfiles: An app for handling static files.\"><code class=\"xref py py-mod docutils literal notranslate\"><span class=\"pre\">django.contrib.staticfiles</span></code></a>.</p>\n<p>Akhirnya, berkas status dilayani melalui pembungkus pada lapisan aplikasi WSGI. Sebagai konsekuensinya, berkas statis meminta untuk tidak melewatkan melalui <a class=\"reference internal\" href=\"/id/5.1/topics/http/middleware/\"><span class=\"doc\">middleware chain</span></a> biasa.</p>\n</aside>\n</section>\n<section id=\"serving-files-uploaded-by-a-user-during-development\">\n<span id=\"serving-uploaded-files-in-development\"></span><h2>Melayani berkas-berkas terunggah oleh pengguna selama pengembangan<a class=\"heading-anchor\" href=\"#serving-files-uploaded-by-a-user-during-development\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Selama pengembangan, anda dapat melayani berkas-berkas media diupload-pengguna dari <a class=\"reference internal\" href=\"/id/5.1/ref/settings/#std-setting-MEDIA_ROOT\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">MEDIA_ROOT</span></code></a> menggunakan tampilan <a class=\"reference internal\" href=\"/id/5.1/ref/views/#django.views.static.serve\" title=\"django.views.static.serve\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">django.views.static.serve()</span></code></a>.</p>\n<p>Ini tidak cocok untuk penggunaan produksi! Untuk beberapa strategi penyebaran umum, lihat <a class=\"reference internal\" href=\"/id/5.1/howto/static-files/deployment/\"><span class=\"doc\">Bagaimana menyebarkan berkas tetap</span></a>.</p>\n<p>Sebagai contoh, jika <a class=\"reference internal\" href=\"/id/5.1/ref/settings/#std-setting-MEDIA_URL\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">MEDIA_URL</span></code></a> anda ditentukan sebagai <code class=\"docutils literal notranslate\"><span class=\"pre\">media/</span></code>, anda dapat melakukan ini dengan menambahkan potongan berikut ke <a class=\"reference internal\" href=\"/id/5.1/ref/settings/#std-setting-ROOT_URLCONF\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">ROOT_URLCONF</span></code></a> anda:</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.conf.urls.static</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">static</span>\n\n<span class=\"n\">urlpatterns</span> <span class=\"o\">=</span> <span class=\"p\">[</span>\n    <span class=\"c1\"># ... the rest of your URLconf goes here ...</span>\n<span class=\"p\">]</span> <span class=\"o\">+</span> <span class=\"n\">static</span><span class=\"p\">(</span><span class=\"n\">settings</span><span class=\"o\">.</span><span class=\"n\">MEDIA_URL</span><span class=\"p\">,</span> <span class=\"n\">document_root</span><span class=\"o\">=</span><span class=\"n\">settings</span><span class=\"o\">.</span><span class=\"n\">MEDIA_ROOT</span><span class=\"p\">)</span>\n</code></pre></div>\n<aside class=\"admonition admonition-note\" role=\"note\">\n<p class=\"admonition-title\">Catatan</p>\n<p>Fungsi pembantu ini hanya bekerja dalam suasana mencari kesalahan dan hanya jika awalan diberikan adalah lokal (misalnya <code class=\"docutils literal notranslate\"><span class=\"pre\">media/</span></code>) dan bukan URL (misalnya <code class=\"docutils literal notranslate\"><span class=\"pre\">http://media.example.com/</span></code>).</p>\n</aside>\n</section>\n<section id=\"testing\">\n<span id=\"staticfiles-testing-support\"></span><h2>Pengujian<a class=\"heading-anchor\" href=\"#testing\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Ketika menjalankan percobaan yang menggunakan permintaan HTTP sebenarnya daripada klien percobaan siap pakai (yaitu ketika menggunakan <a class=\"reference internal\" href=\"/id/5.1/topics/testing/tools/#django.test.LiveServerTestCase\" title=\"django.test.LiveServerTestCase\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">LiveServerTestCase</span></code></a> siap pakai) aset tetap butuh dilayani bersama sisa dari isi sehingga lingkungan percobaan memproduksi kembali satu yang asli setepat mungkin, tetapi <code class=\"docutils literal notranslate\"><span class=\"pre\">LiveServerTestCase</span></code> mempunyai hanya sangat dasar berkas tetap-melayani fungsi: Dia tidak tahu bahwa penemu fitur dari aplikasi <code class=\"docutils literal notranslate\"><span class=\"pre\">staticfiles</span></code> dan menganggap isi statis telah dikumpulkan dibawah <a class=\"reference internal\" href=\"/id/5.1/ref/settings/#std-setting-STATIC_ROOT\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">STATIC_ROOT</span></code></a>.</p>\n<p>Karena ini, <code class=\"docutils literal notranslate\"><span class=\"pre\">staticfiles</span></code> mengemas <a class=\"reference internal\" href=\"/id/5.1/ref/contrib/staticfiles/#django.contrib.staticfiles.testing.StaticLiveServerTestCase\" title=\"django.contrib.staticfiles.testing.StaticLiveServerTestCase\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">django.contrib.staticfiles.testing.StaticLiveServerTestCase</span></code></a> milik dia sendiri, sebuah subkelas dari satu siap pakai yang mempunyai kemampuan untuk transparan melayani semua aset selama pelaksanaan dari percobaan ini dengan cara sangat mirip pada apa kami dapat di waktu pengembangan dengan <code class=\"docutils literal notranslate\"><span class=\"pre\">DEBUG</span> <span class=\"pre\">=</span> <span class=\"pre\">True</span></code>, yaitu tanpa mengumpulkan mereka menggunakan <a class=\"reference internal\" href=\"/id/5.1/ref/contrib/staticfiles/#django-admin-collectstatic\"><code class=\"xref std std-djadmin docutils literal notranslate\"><span class=\"pre\">collectstatic</span></code></a> pertama kali.</p>\n</section>\n<section id=\"deployment\">\n<h2>Penyebaran<a class=\"heading-anchor\" href=\"#deployment\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p><a class=\"reference internal\" href=\"/id/5.1/ref/contrib/staticfiles/#module-django.contrib.staticfiles\" title=\"django.contrib.staticfiles: An app for handling static files.\"><code class=\"xref py py-mod docutils literal notranslate\"><span class=\"pre\">django.contrib.staticfiles</span></code></a> menyediakan kenyamanan perintah pengelolaan untuk mengumpulkan berkas-berkas tetap dalam direktori tunggal sehingga anda dapat melayani mereka dengan mudah.</p>\n<ol class=\"arabic\">\n<li><p>Setel pengaturan <a class=\"reference internal\" href=\"/id/5.1/ref/settings/#std-setting-STATIC_ROOT\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">STATIC_ROOT</span></code></a> ke direktori dari dimana anda ingin melayani berkas-berkas ini, sebagai contoh:</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\">STATIC_ROOT</span> <span class=\"o\">=</span> <span class=\"s2\">&quot;/var/www/example.com/static/&quot;</span>\n</code></pre></div>\n</li>\n<li><p>Jalankan perintah pengelolaan <a class=\"reference internal\" href=\"/id/5.1/ref/contrib/staticfiles/#django-admin-collectstatic\"><code class=\"xref std std-djadmin docutils literal notranslate\"><span class=\"pre\">collectstatic</span></code></a>:</p>\n<div class=\"code-block\" data-language=\"shell\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</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=\"Shell code\"><code>$<span class=\"w\"> </span>python<span class=\"w\"> </span>manage.py<span class=\"w\"> </span>collectstatic\n</code></pre></div>\n<p>Ini akan menyalin semua berkas dari pelipat tetap anda kedalam direktori <a class=\"reference internal\" href=\"/id/5.1/ref/settings/#std-setting-STATIC_ROOT\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">STATIC_ROOT</span></code></a>.</p>\n</li>\n<li><p>Gunakan sebuah peladen jaringan dari pilihan anda untuk melayani berkas-berkas. <a class=\"reference internal\" href=\"/id/5.1/howto/static-files/deployment/\"><span class=\"doc\">Bagaimana menyebarkan berkas tetap</span></a> melingkupi beberapa strategi penyebaran umum untuk berkas-berkas tetap.</p></li>\n</ol>\n</section>\n<section id=\"learn-more\">\n<h2>Pelajari lagi<a class=\"heading-anchor\" href=\"#learn-more\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Dokumen ini melingkupi corak penggunaan dasar dan beberapa umum. Untuk melengkapi rincian pada semua pengaturan, perintah, etiket cetakan, dan potongan lainnya disertakan dalam <a class=\"reference internal\" href=\"/id/5.1/ref/contrib/staticfiles/#module-django.contrib.staticfiles\" title=\"django.contrib.staticfiles: An app for handling static files.\"><code class=\"xref py py-mod docutils literal notranslate\"><span class=\"pre\">django.contrib.staticfiles</span></code></a>, lihat <a class=\"reference internal\" href=\"/id/5.1/ref/contrib/staticfiles/\"><span class=\"doc\">the acuan berkas tetap</span></a>.</p>\n</section>","rootId":"how-to-manage-static-files-e-g-images-javascript-css","toc":[{"title":"Mengkonfigurasi berkas-berkas tetap","anchor":"configuring-static-files","children":[]},{"title":"Melayani berkas-berkas tetap selama pengembangan","anchor":"serving-static-files-during-development","children":[]},{"title":"Melayani berkas-berkas terunggah oleh pengguna selama pengembangan","anchor":"serving-files-uploaded-by-a-user-during-development","children":[]},{"title":"Pengujian","anchor":"testing","children":[]},{"title":"Penyebaran","anchor":"deployment","children":[]},{"title":"Pelajari lagi","anchor":"learn-more","children":[]}],"breadcrumbs":[{"docname":"howto/index","title":"Panduan Cara-cara","url":"/id/5.1/howto/"}],"prev":{"docname":"howto/custom-template-tags","title":"Bagaimana membuat cetakan etiket dan saringan disesuaikan","url":"/id/5.1/howto/custom-template-tags/"},"next":{"docname":"howto/logging","title":"Bagaimana mengkonfigurasi dan menggunakan pencatatan","url":"/id/5.1/howto/logging/"},"formats":{"html":"/id/5.1/howto/static-files/","markdown":"/id/5.1/howto/static-files.md","json":"/id/5.1/howto/static-files.json"},"source":"https://github.com/django/django/blob/stable/5.1.x/docs/howto/static-files/index.txt","official":"https://docs.djangoproject.com/id/5.1/howto/static-files/","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","1.10","1.9"],"inLocales":["en","zh-hans","fr","ja","id","it","pt-br","ko","es","el","pl"]}