18/02/16

Cara Update Composer Via Command Line

Ketika sedang update atau instal aplikasi seperti laravel mungkin mendapatkan pesan "Warning: This development build of composer is over 60 days old. It is recommended to update it by running "Composer.phar self-update" to get the latest version." Yang dimaksudkan composer yang kita gunakan minta di update.

Namun, ketika mengikuti perintah tersebut tetapi gagal. Caranya cukup tambahkan php di depan di tempat menyimpan file composer.phar seperti ini:

php c:\ProgramData\ComposerSetup\bin\composer.phar self-update


28/01/16

Ubah Validasi Laravel 5.1 Jadi Bahasa Indonesia (Trik Singkat)

Setelah instal Laravel,  kita akan mendapatkan default Bahasa Inggris untuk authentikasi, pagination, password, dan validasi. Skrip ini berada di resources\lang\en

Saya tulis judul hanya ubah validasi

Untuk merubahnya menjadi Bahasa Indonesia dapat langsung di download di sini. Yang akan diubah keempat file tersebut. Saya tulis judul hanya validasi lantaran file ini yang cukup banyak isinya, hehe.

Kemudian extract file tersebut, dan copy satu folder id ke dalam folder resources\lang.

Terakhir, edit file app.php yang berada di folder config. Ubah 'locale' => 'en' menjadi 'locale' => 'id'.

Itu saja.

09/01/16

OrderBy dari Relasi Eloquent. Tips Singkat: Laravel 5.1

Kalau kita membuat relasi Product dan Costumer menggunakan eloquent laravel, ketika ingin memanggil costumer akan begini: App\Product::find(1)->costumer, dan akan ditampilkan menggunakan foreach. Secara default eloquent akan memanggil costumer berdasarkan urutan id dari costumer tersebut, serta secara ascending atau ASC, jadi akan berurutan dari id ke-1 sampai seterusnya.

Apabila ingin memanggil costumer berdasarkan urutan nama secara abjad misalnya, salah satu caranya melalui model, jadi akan kita ubah pada model yang merelasi custumer yakni product:

Sebelumnya mungkin akan seperti ini:


class Product extends Model

{

    public function customer()

    {

        return $this->hasMany('App\Customer');

    }

}


Untuk membuat orderBy, tambahkan pada hasMany seperti ini:


class Product extends Model

{

    public function customer()

    {

        return $this->hasMandy('App\Customer')->orderBy('name', 'DESC');

    }

}


Untuk memanggilnya sama saja, App\Product::find(1)->costumer;

06/01/16

Membuat url seo friendly laravel 5.1

Selah satu yang membuat website kita yaitu melalui URL yang Search Engine Optimize (SEO) sehingga mudah terindex oleh mesin pencari seperti google dan lainnya.

Langung saja, pada laravel 5.1 kita dapat menggunakan library, salah satunya Cocur/slugify.

Menggunakan library ini selain menghapus beberapa karakter yang sering digunakan, juga menghapus banyak karakter lainnnya. Selain itu dapat mengkustom beberapa bahasa yang dalam hurufnya menggunakan berbagai karakter, seperti Bahasa Jerman, Perancis, Rusia, Arab, Vietnam, dan lain sebagainya.

Secara umum, dari dokumentasi yang diberikannya, saya singkat seperti berikut:
1. Kita dapat instal library ini melalui terminal : masuk ke project kita:

$ composer require cocur/slugify

2. Pada config/app tambahkan service provider

'providers' => array(
    "Cocur\Slugify\Bridge\Laravel\SlugifyServiceProvider",
)

3. Kemudian tambahkan facade  ke array aliases:

'aliases' => array(
    "Slugify" => "Cocur\Slugify\Bridge\Laravel\SlugifyFacade",
)

4. Cara menggunakan bisa menggunakan

$url = Slugify::slugify('welcome to the homepage');

Tambahan:
Pada dokumentasi tersebut untuk di laravel tidak disebutkan pemanggilan use, ketika saya mencoba menggunakan use Cocur\Slugify\Slugify; facade tidak bekerja pada model, sedangkan menggunakan terminal bisa saja.
Tanpa berpusing panjang :D, jadi agar dapat menggunakan library ini pada model saya menggunakan

use Cocur\Slugify\Slugify;

$slugify = new Slugify();
echo $slugify->slugify('Hello World!'); // hello-world

Praktek realnya, saya menggunakan mutator untuk menyimpan ke dalam database:

namespace App;

use Illuminate\Database\Eloquent\Model;
use Cocur\Slugify\Slugify;

class Post extends Model
{
    ...
    public function setSeopostAttribute($seopost)
    {
        $slugify = new Slugify();

        $this->attributes['seopost'] = $slugify->slugify($seopost);
    }
}

seopost dalam array attributes merupakan nama field pada tabel. Sedangkan Seopost yang berada di setSeopostAttribute harus sama dengan nama field.

And work. 

Belajar PHP

Diberdayakan oleh Blogger.
 

© 2013 Belajar. All rights resevered. Designed by Templateism

Back To Top