aulch’s — Week 9
Di minggu ke-9 ini, harusnya menjadi minggu yang sangat produktif (untuk PPL), bagaimana tidak, minggu terakhir untuk sprint 2, tapi task masih numpuk. Sayangnya, hadir pula tanggung jawab lain untuk waktu yang sama. Intinya saya masih terlalu “nyantai” sih padahal kerjaan numpuk. Susahnya menjadi ideal (padahal kalau selesein kerjaan yang non-akademis idealisnya minta ampun).
Jadi apa saja yang berhasil saya selesaikan? lumayan tapi tidak terasa (nahloh?).
- Bikin halaman about tanpa laravel.
Framework yang kami gunakan untuk web ialah laravel. dan yang mendapatkan tugas untuk membuat template (header dan footer web) adalah Ega. Karena Ega belum membuat template menggunakan laravel, jadi saya membuat halaman about dengan template tanpa laravel buatan Ega. Ini hasilnya
2. Mengedit Dokumen Elicitation
Dokumen elicitation belum selesai, maka dari itu, saya dengan Puti mencoba menyelesaikannya. Diawali oleh Puti untuk menyusun dokumen elicitation, saya mencoba menambahkan serta menyunting hal apa saja yang sesuai untuk dokumen tersebut. Dokumen dapat dilihat di sini
3. Membuat halaman about dengan laravel.
Kali ini, Ega sudah menyelesaikan template web dengan menggunakan framework laravel. Maka saya mengintegrasikan pekerjaan saya yang sebelumnya tanpa laravel ke framework tersebut. Saya cukup banyak belajar untuk ini, routing, menggunakan template header dan footer hanya dengan menyematkan sintaks @extends(‘a.b’) dan @section(‘x’), kemudian untuk menandakan bahwa section tersebut selesai, sematkan @endsection di bagian paling bawah halaman editor.
Seperti ini
dengan source code yang sedikit berbeda, saya dapat membuat tampilan halaman yang sama seperti sebelumnya. lihat!
framework ini juga sudah menggunakan bootstrap, sehingga ketika kita perkecil layar browser kita, konten dari webnya ikut tampil menyesuaikan besar layar. Namun hal tersebut belum berlaku pada images.
Ngomong-ngomong, apa ya arti @extends, @section, @endsection, dan lainnya?
sedikit bahas yuk!
@extends(a.b)
ada dokumentasinya yang sepertinya cukup mudah untuk dipahami di sini. Tapi biar saya juga semakin paham, saya bantu jelaskan sedikit yaa :)
maksud dari pola tersebut ialah, a = folder tempat menyimpan layout (atau template) yg ingin digunakan dan b = nama file dari templatenya yang berekstensi blade. Dalam kasus ini, saya menggunakan @extends(layouts.page)
nah ini template yang Ega buat. untuk bagian head, kita include file head yang ada di folder layouts untuk menjadi header kita. Lebih simple dan rapih ya ketika menggunakan framework (laravel). Kebayang dong kalo tanpa framework, tiap bikin halaman baru, mesti copy source code untuk header dan footer sebagai template di setiap halaman. Dengan cara seperti ini, kita bisa gunakan fungsi @include(namaFolder.namaFile) jika kita ingin memasukan suatu halaman ke dalam halaman kita. Hal serupa berlaku juga nih untuk navbar dan footer. Nih biar ga penasaran isi dari file head.blade.php
“Terus, gimana doong nentuin bagian yang bakal diedit? :(“ tenaaang, ada @yield(‘g’) yang bisa kamu gunakan untuk menandakan bagian mana yang bisa disunting sesuai kebutuhan. Dalam projek ini, Ega membuat @yield(‘bodyContent’) sehingga kita cukup memanggilnya dengan @section(‘bodyContent’) dan mengetikkan source code sesuai kebutuhan sebelum ditutup dengan @endsection pada file yang kita ingin sunting untuk menjadi halaman baru.
setelah selesai bermain dengan template, kita harus routing dulu. Routing itu bertujuan untuk menambahkan refference link dari tombol-tombol yang ada. Misalnya, kita sudah selesai membuat halaman about, maka kita routing sehingga ketika kita ketikkan http://localhost/InspWeb/public/about, halaman about dapat diakses -dari lokal- (eits, jangan lupa untuk mengaktifkan xampp dulu ya). Jika kita mengetikkan alamat http://localhost/InspWeb/public/ akan terarahkan ke halaman utama (landing page)
4. Last but not least, Diskusi dengan Haryo
Setelah menyelesaikan kodingan untuk insert dokumen ke collection, ternyata ada beberapa kesepakatan yang kami buat perihal nilai dari atribut. Diskusi yang pertama mengenai autoincrement untuk _id. Awalnya sepakat tidak perlu karena di mongodb tidak begitu signifikan autoincrement-nya (_id akan otomatis diberikan dan bertambah secara incremental jika kita tidak menentukan _id secara manual) , tapi ternyata ada class yang memanggil _id suatu quote, sehingga _id harus dibuat autoincrement. Begitu juga dengan atribut quote itu sendiri yang harus dibuat unik (kalau yang ini lupa di-set dari awal hehe). Oleh karena itu, atribut tersebut akan diubah sesuai dengan kesepakatan.
Saya rasa sekian pembelajaran saya di minggu 9.