Laravel CRUD dengan repository

Buat Anda yang ingin mencari contoh Laravel CRUD, silahkan mendownload dari link github yang saya miliki https://github.com/duniadua/TodoApplication apa yang anda dapatkan dari contoh yang saya miliki

  1. PHP Repository Pattern
  2. Laravel Migration
  3. Blade Templating
  4. Travis CI (Continues Integration)

Yang mungkin nanti akan saya ulas 1 per 1 agar lebih jelas dan paham tentang Laravel ini, jika ada pertanyaan mungkin bisa comment dibawah ini

Iklan

Cara menggunakan Try and Catch pada Laravel

Terkadang bagi programmer yang baru belajar suka bertanya kegunaan fungsi try, throw and catch didalam sebuah fungsi atau didalam program, padahal banyak sekali kegunaan dari fungsi ini.

Apa itu Exception

Pernah dengar Exception ? Exception menurut halaman php.net adalah

PHP 5 has an exception model similar to that of other programming languages. An exception can be thrown, and caught (“catched”) within PHP. Code may be surrounded in a try block, to facilitate the catching of potential exceptions. Each try must have at least one corresponding catch or finally block.

Pada PHP 5 exception digunakan untuk menghandle error dengan pendekatan object oriented lihat http://www.w3schools.com/php/php_exception.asp

Contoh nya dapat dilihat disini

<?php
// Membuat fungsi untuk mengetahui bahwa var $number jika lebih besar dari 1 maka akan melempar Exception
  function checkNum($number) {
if($number>1) {
throw new Exception("Value must be 1 or below");
}
return true;
}

//Men trigger exception didalam "try" block
try {
checkNum(2);
}
catch(Exception $e) {
echo 'Message: ' .$e->getMessage();
}

1. Langkah pertama kita akan membuat fungsi checkNum yang didalam fungsi tersebut jika variable $number lebih dari 1 maka kita akan membuat Exception baru berisikan informasi bahawa variable $number tidak boleh lebih dari 1

2. Untuk mengimplementasikannya adalah kita masukan fungsi checkNum kedalam blok try and catch dan didalam blok catch akan menangkap pesan Exception yang telah dilempar dari dalam fungsi checkNum

Implementasi didalam Laravel

Baca lebih lanjut

Menampilkan view dengan Laravel part 1

Introduction

Untuk menampilkan view dengan Laravel adalah hal yang sangat mendasar sebelum memulai pemrograman PHP menggunakan Laravel Framework 5.2, untuk di ingat bahwa ini adalah hal yang paling mendasar, mengapa saya bilang very-very basic karena yang perlu Anda ingat adalah logika dalam menampilkan halaman itu sendiri, ingat ya logika, begitu logika masuk di otak dan pikiran Anda maka mau seperti apa bentuk Framework yang akan Anda gunakan maka dengan mudah Anda dapat ber Adaptasi.

Hal yang harus diperhatikan

Untuk memulai menampilkan View ada beberapa hal yang Anda harus perhatikan yaitu

  1. Route
  2. View

kedua hal itu yang akan diperlukan dalam membuat view karena Route untuk memappingkan URL yang akan diakses melalui Browser dan View berguna untuk menampilkan halaman dimana user mengakses alamat URL tersebut.

Memulainya dengan Hello World

Sekarang kita mulai tutorial ini dengan menampilkan the famous “hello world”, yak si hello world akan kita tampilkan yang perlu Anda lakukan adalah

  1. Mengedit File routes.php
  2. …. nothing (easy right 😀 )
File routes.php berada di
projectname\app\Http\routes.php

Lalu tambahkan beberapa baris program seperti ini

Route::get('hello', function() {
$name = 'Udin';
 return 'This is Hello World '.$name;
});

kemudian akses melalui browser http://localhost/sia/public/index.php/hello maka akan tampil “This is Hello World name”, agar lebih jelas lihat penjelasan berikut ini

  1. Kita membuat Route dengan metode GET dengan URL hello
  2. Dengan Anonymous function
  3. Dimana terdapat variable $name bertipe String yang berisikan ‘Udin’
  4. Lalu menghentikan suatu fungsi proses dengan menampilkan halaman / String

Menambahkan parameter Hello World

Lalu bagaimana jika Anda ingin menampilkan parameter yang ada di URL untuk dimasukan kedalam halaman?, yaitu dengan cara mengedit baris program yang kita buat sebelumnya seperti ini

Route::get('hello/{name}', function($name) { 
 return 'This is Hello World '.$name;
});

kemudian akses melalui browser http://localhost/sia/public/index.php/hello/udin maka akan tampil “This is Hello World udin”, untuk penjelasan dari baris diatas adalah sebagai berikut

  1. Kita membuat Route dengan metode GET dengan URL hello dengan menggunakan parameter name
  2. Dengan Anonymous function yang terdapat variable $name bertipe String
  3. Lalu menghentikan suatu fungsi proses dengan menampilkan halaman / String

Apakah Anda sudah paham tentang cara menampilkan view di Laravel ? baiknya Anda mengulang kembali apa yang sudah saya buat sebelumnya, inget repeating sangat penting bagi para pemula dalam mempelajari suatu ilmu baru, sampai ketemu di part 2 karena di part 2 akan saya jelaskan mengenai View lebih dalam.. Jangan lupa ulangi lagi tutorial saya dengan modifikasi yang ingin Anda lakukan.. Dont Forget Share this Knowledge..

Technical Needs (TN)

PHP Language
Laravel Framework 5.2
Bootstrap

Tutorial Experience Level (TEL)

Low
Medium
High

Consumed Time
10 Menit

Memulai Laravel Framework dengan 2 langkah mudah

Technical Needs (TN)

  1. PHP Language
  2. Composer
  3. Web Server (Apache / Nginx ect)

Tutorial Experience Level (TEL)

  1. Low
  2. Medium
  3. High

Consumed Time
10 Menit

Pengenalan

Dalam memulai Laravel tentu nya kita harus mengerti tentang bahasa pemrograman PHP, selanjutnya yang Anda perlu kan adalah pemahaman tentang logika pembuatan program dengan mengikuti design patterns MVC, namun Design Pattern ini tergantung oleh penggunannya.

Mengapa Anda harus mempelajari Laravel ?

Secara teknis, Framework adalah kumpulan dari class class yang digabung kedalam satu kerangka kerja.. ingat kerangka kerja, karena berbeda jenis framework maka berbeda juga cara penggunaannya jadi jika Anda pengguna fanatik salah satu framework berpindah ke Laravel maka yang Anda harus lakukan adalah melupakan framework Anda tersebut dan mulailah hal yang baru dengan Laravel

Pra Persyaratan

Persyaratan sebelum memulai Laravel secara teknis adalah

1. Framework Laravel 5.2
2. Php versi terakhir => 5.5.9
3. Webserver

Langkah 1 – Instalasi Laravel

Dalam melakukan instalasi Laravel dapat dilakukan oleh 3 langkah yaitu

  1. Laravel Installer
  2. Composer
  3. Zip File (compressed Project)

Kita akan membahas bagaimana melakukan installasi melalui Composer namun yang Anda harus tau bahwa melalui Composer akan membutuhkan waktu yang cukup lama tergantung kondisi internet dan koneksi ke server packagist.

Anda dapat melakukan proses instalasi dengan menggunakan comand line / terminal dengan cara sebagai berikut

composer create-project laravel/laravel (project name)

(project name) ini adalah folder kerja anda dalam menjalankan project laravel

Langkah 2 – Configurasi Laravel

Setelah folder kerja siap Anda harus melakukan configurasi folder permission terlebih dahulu, folder apa yang harus di configurasi:
1. Storage
2. Bootstrap / cache

Configurasi tambahan yaitu

None 🙂

lalu bagaimana cara saya dapat mengecek bahwa instalasi laravel saya berhasil ?, cara melihatnya adalah melalui browser dengan mengakses http://localhost/projectname/public/

Database Migration

Pembahasan kita saat ini adalah tentang database migration, mungkin beberapa orang bertanya buat apa sih database migration, trus apa sih gunanya. Mari kita bahas disini tentang Migrasi, pada umumnya setiap developer atau programmer baik perorangan maupun group lebih sering suka membuat database dan table langsung baik pada sql manager, phpmyadmin, squirellsql, navicat dll.

Memang lebih enak menggunakannya sebab langsung melakukan perubahan di DBMS itu sendiri tetapi jika si A (programmer) melakukan perubahan code program dan si B (Analis yang terperangkap sebagai Implementasi program) tersebut di suatu perusahaan C tidak mengetahui bahwa A telah ada penambahan field pada suatu table maka jika A lupa memberitahukan si B bahwa ada penambahan field di table itu maka apa yang terjadi ? pasti program tersebut pasti tidak akan jalan dengan semestinya.

Di Codeigniter (CI)  memiliki class migration bisa buka link disini, class ini bertanggung jawab untuk menghandle segala bentuk migrasi


defined('BASEPATH') OR exit('No direct script access allowed');

class Migration_Add_blog extends CI_Migration {

public function up()
{
$this->dbforge->add_field(array(
'blog_id' => array(
'type' => 'INT',
'constraint' => 5,
'unsigned' => TRUE,
'auto_increment' => TRUE
),
'blog_title' => array(
'type' => 'VARCHAR',
'constraint' => '100',
),
'blog_description' => array(
'type' => 'TEXT',
'null' => TRUE,
),
));

$this->dbforge->create_table('blog');
}

public function down()
{
$this->dbforge->drop_table('blog');
}

 

Contoh diatas adalah class dari penggunaan class migration dan class database forge yang berguna untuk membuat table blog. Kalau anda bertanya bagaimana cara menggunakan database migration ini berikut langkah2nya

  1. Buat folder migration didalam folder application
  2. Setiap kali kita akan membuat class yang berfungsi membuat table misalnya table blog maka penamaan file tersebut adalah 001_Add_Blog.php dan untuk versi migrasi selanjutnya 002_Add_News.php dan 003_Nama_File.php dan seterus nya jadi nama file itu berupa penomeran dari dari versi yang akan kita buat.
  3. Penamaan class harus mengikuti kaidahnya misal di file 001_Add_Blog.php maka penamaan class nya Migration_Add_Blog
  4. Membuat Controller untuk mengjalankan perintah migrasi ke versi tertentu buat nama file controller yang bernama migrate nanti isinya seperti ini
    
    class migrate extends CI_Controller {
    
    //put your code here
    public function ver($ver) {
    $this->load->library('migration');
    
    if (!$this->migration->version($ver)):
    show_error($this->migration->error_string());
    else:
    echo 'migration success -'.$ver.br();
    endif;
    
    
    }
    
    }
    
  5. Jalankan class migrate ini di browser sesuai dengan migrasi yang anda buat

Mengapa saya mengulas tentang database migration ini adalah untuk membuka mata para developer atau programer agar lebih rapih lagi dalam membuat suatu program yang nanti nya akan berguna bagi diri kita dan tidak menyulitkan bagi orang lain, jika anda masih bingung tentang ulasan ini anda bisa mengisi komen dibawah ini ya