{"id":840,"date":"2022-01-11T11:11:03","date_gmt":"2022-01-11T04:11:03","guid":{"rendered":"https:\/\/duniacoding.info\/?p=840"},"modified":"2022-01-11T11:11:05","modified_gmt":"2022-01-11T04:11:05","slug":"belajar-laravel-struktur-folder-laravel","status":"publish","type":"post","link":"https:\/\/duniacoding.id\/blog\/belajar-laravel-struktur-folder-laravel\/","title":{"rendered":"Belajar Laravel #3 : Struktur Folder Laravel"},"content":{"rendered":"\n<figure class=\"wp-block-image size-full is-resized\"><img decoding=\"async\" src=\"https:\/\/duniacoding.info\/wp-content\/uploads\/2021\/12\/laravel_logo_icon_170314.png\" alt=\"struktur-folder-laravel\" class=\"wp-image-762\" width=\"842\" height=\"421\" srcset=\"https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2021\/12\/laravel_logo_icon_170314.png 512w, https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2021\/12\/laravel_logo_icon_170314-300x150.png 300w\" sizes=\"(max-width: 842px) 100vw, 842px\" \/><figcaption>Belajar Laravel<\/figcaption><\/figure>\n\n\n\n<p>Setelah di-artikel sebelumnya kita melakukan instalasi Laravel, disini kita akan membahas Struktur Folder Laravel. Seperti <code>Framework<\/code> pada umumnya, Laravel memiliki beberapa Folder yang memiliki fungsi masing-masing, di artikel ini akan kita bahas Folder Laravel yang penting beserta Struktur Folder di dalamnya. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Penjelasan Struktur Folder Laravel<\/h2>\n\n\n\n<p>Struktur Folder Laravel adalah hal yang sangat penting untuk kita pahami, dikarenakan selama pengembangan kedepan, Struktur Folder ini akan mempengaruhi kita dalam membuat Aplikasi berbasis Laravel. <\/p>\n\n\n\n<p>Disini aku tidak akan menjelaksan secara lengkap semua Folder yang ada di Laravel, tapi aku akan menjelaskan dengan Standar Folder yang harus digunakan untuk kita membuat sebuah Fitur Standar CRUD (Create, Read, Update, dan Delete).<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img decoding=\"async\" src=\"https:\/\/duniacoding.info\/wp-content\/uploads\/2022\/01\/Laravel-3-1.png\" alt=\"\" class=\"wp-image-841\" width=\"284\" height=\"477\" srcset=\"https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2022\/01\/Laravel-3-1.png 486w, https:\/\/duniacoding.id\/blog\/wp-content\/uploads\/2022\/01\/Laravel-3-1-179x300.png 179w\" sizes=\"(max-width: 284px) 100vw, 284px\" \/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Folder <code>app<\/code><\/h4>\n\n\n\n<p>Folder yang pertama akan kita bahas adalah Folder <code>app<\/code>. Kurang lebih seperti ini strukturnya<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">.\n\u251c\u2500\u2500 Console\n\u251c\u2500\u2500 Exceptions\n\u251c\u2500\u2500 Http\n\u2502   \u251c\u2500\u2500 Controllers\n\u2502   \u2514\u2500\u2500 Middleware\n\u251c\u2500\u2500 Models\n\u2514\u2500\u2500 Provides<\/pre>\n\n\n\n<p>Ada 2 Folder utama yang harus diperhatikan di Folder <code>app<\/code> ini, yang pertama adalah Folder <code>Models<\/code>. Folder ini berisi <code>Model <\/code>yang kita gunakan di Aplikasi kita. <code>Model<\/code> sendiri adalah sebuah File yang mengatur Hubungan antara aplikasi kita dengan <code>Database<\/code>, jadi <code>Model<\/code> ini mengatur apa saja yang boleh kita isi di <code>Database <\/code>kita, bagaimana relasi <code>Database <\/code>kita, dan bahkan kalau di Laravel, <code>Model <\/code>ini juga berguna untuk memanggil Data langsung dari <code>Database<\/code><\/p>\n\n\n\n<p>Folder berikutnya yang harus diperhatikan adalah Folder <code>Http\/Controllers<\/code>. Folder <code>Http\/Controllers<\/code> adalah Folder yang kita gunakan untuk menyimpan semua <code>Controller <\/code>yang dibutuhkan oleh Aplikasi kita. Apa itu <code>Controller<\/code>? Singkatnya dia adalah File yang mengatur Hubungan antara <code>Model<\/code> dengan Tampilan dari Aplikasi kita. Jadi misal kita ingin menampilkan Data dari <code>Database <\/code>di Website kita, Nah <code>Controller <\/code>ini lah yang meminta data dari <code>Model<\/code> dan <em>mengantarkan <\/em>Data nya ke Tampilan kita.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Folder <code>resources<\/code><\/h4>\n\n\n\n<p>Struktur Folder Laravel yang berikutnya akan kita bahas adalah Folder <code>resources<\/code>. <\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">.\n\u251c\u2500\u2500 css\n\u251c\u2500\u2500 js\n\u251c\u2500\u2500 lang \n\u2514\u2500\u2500 views<\/pre>\n\n\n\n<p>Pada Folder <code>resources<\/code> ini, ada satu Folder yang harus diperhatikan yaitu Folder <code>views<\/code>. Nah Folder ini berisi semua Folder tampilan kita. Jadi misal kita ingin membuat tampilan untuk Landing Page, ya di Folder <code>resources<\/code> ini lah tempatnya, di Folder <code>resources<\/code> ini juga sudah terdapat sebuah file <code>view<\/code> yaitu <code>welcome.blade.php<\/code> yang akan ditampilkan saat kalian menjalankan Laravel untuk pertama kalinya.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Folder <code>database<\/code><\/h4>\n\n\n\n<p>Folder <code>database<\/code> merupakan salah satu Struktur Folder Laravel yang harus kita pahami isinya. Folder <code>database<\/code> ini berguna untuk hubungan Aplikasi kita dengan Database. Mulai dari membuat tabel, sampai mengisi tabel di Database dengan data palsu atau <em>dummy data.<\/em><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">.\n\u251c\u2500\u2500 factories\n\u2502 \u2514\u2500\u2500 UserFactory.php\n\u251c\u2500\u2500 migrations\n\u2502 \u251c\u2500\u2500 2014_10_12_000000_create_users_table.php\n\u2502 \u2514\u2500\u2500 2014_10_12_100000_create_password_resets_table.php\n\u2514\u2500\u2500 seeds\n  \u2514\u2500\u2500 DatabaseSeeder.php<\/pre>\n\n\n\n<p>Folder <code>database<\/code> ini berisi beberapa Folder yang penting. Pertama ada Folder <code>factories<\/code>, Folder ini berisi settingan kita untuk mengisi <em>data dummy <\/em>kita tapi menggunakan <code>Faker<\/code>, apa itu <code>Faker<\/code>? bisa kalian baca disini <a href=\"https:\/\/fakerphp.github.io\/\" target=\"_blank\" rel=\"noopener\">fakerphp.github.io<\/a>. <\/p>\n\n\n\n<p>Selanjutnya ada Folder <code>migrations<\/code>. Folder ini berisi settingan Laravel kita untuk Tabel di Database. Misal nih, kita memiliki Table <code>Users<\/code>, nah kita bisa mengatur Tabel <code>Users <\/code>ini memiliki kolom apa saja di <code>migrations <\/code>ini. Detailnya akan kita bahas di artikel lain ya.<\/p>\n\n\n\n<p>Folder berikutnya adalah Folder <code>seeds<\/code>. Folder ini adalah Folder untuk <em>meng-input <\/em>kan Data Palsu atau <em>dummy data <\/em>kita ke <code>Database<\/code>. Jadi kalau <code>factories <\/code>itu mengatur Data yang akan dimasukkan ke Database, <code>seeds<\/code> ini adalah Folder yang <em>meng-input <\/em>kannya ke <code>Database <\/code>kita.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Folder <code>routes<\/code><\/h4>\n\n\n\n<p>Folder yang akan kita bahas berikutnya adalah Folder <code>routes<\/code>. Folder ini merupakan Folder yang cukup simple diantara Struktur Folder Laravel lainnya, tapi isinya sangatlah penting.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">.<br>\u251c\u2500\u2500 api.php<br>\u251c\u2500\u2500 channels.php<br>\u251c\u2500\u2500 console.php<br>\u2514\u2500\u2500 web.php<\/pre>\n\n\n\n<p>Didalam Folder <code>routes<\/code> ini terdapat sebuah file <code>web.php<\/code>. File ini akan kita isi dengan Route\/URL yang kita gunakan di aplikasi kita. Misal nih, kita gunakan <code>Url '\/login' <\/code>untuk melakukan <code>Login<\/code>, <code>url '\/login'<\/code> itu harus kita tulis atau kita kenalkan di File <code>web.php<\/code>.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Folder <code>public<\/code><\/h4>\n\n\n\n<p>Struktur Folder Laravel terakhir yang akan kita bahas adalah Folder <code>public<\/code>. Kurang lebih seperti ini strukturnya<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">.\n\u251c\u2500\u2500 .htaccess\n\u251c\u2500\u2500 favicon.ico\n\u251c\u2500\u2500 index.php\n\u2514\u2500\u2500 robots.txt<\/pre>\n\n\n\n<p>Kalau dilihat memang Folder <code>public<\/code> ini tidak berisi Folder apapun, tapi kedepannya saat kita Developing Laravel, Folder ini akan kita isi <em>asset <\/em>kita. Beberapa contoh <em>asset <\/em>antara lain File<code> .css, .js, <\/code>dan <code>gambar <\/code>yang kita pakai juga. Mungkin teman-teman bingung karena di Folder <code>views<\/code> sebenarnya sudah ada tempat untuk css, js, dll, akan tetapi semua <em>asset <\/em>kita memang harus diupload ke Folder <code>public<\/code> ini agar bisa diakses oleh &#8220;Public&#8221; atau semua orang.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Kesimpulan<\/h2>\n\n\n\n<p>Nah kita sudah selesai membahas Struktur Folder Laravel pada artikel ini. Pastikan kalian semua memahami Struktur Folder Laravel ini ya, karena selama Developing kedepannya kita akan banyak membahas Folder-Folder diatas. <\/p>\n\n\n\n<p>Oh iya misal temen-temen belum melakukan instalasi Laravel, bisa dilihat disini ya<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li><a href=\"https:\/\/duniacoding.info\/belajar-laravel-2-cara-instalasi-laravel\/\" target=\"_blank\" rel=\"noopener\">Belajar Laravel #2 : Cara Instalasi Laravel<\/a><\/li><\/ol>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Setelah di-artikel sebelumnya kita melakukan instalasi Laravel, disini kita akan membahas Struktur Folder Laravel. Seperti Framework pada umumnya, Laravel memiliki beberapa Folder yang memiliki fungsi masing-masing, di artikel ini akan kita&#46;&#46;&#46;<\/p>\n","protected":false},"author":2,"featured_media":762,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8],"tags":[93,94,49],"class_list":["post-840","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutorial","tag-laravel","tag-laravel-8","tag-tutorial"],"_links":{"self":[{"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/posts\/840","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/comments?post=840"}],"version-history":[{"count":2,"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/posts\/840\/revisions"}],"predecessor-version":[{"id":874,"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/posts\/840\/revisions\/874"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/media\/762"}],"wp:attachment":[{"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/media?parent=840"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/categories?post=840"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/duniacoding.id\/blog\/wp-json\/wp\/v2\/tags?post=840"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}