Skip to main content

membuat Yii2 restfull Web service menggunakan advance template ( bagian 3 : penambahan tabel dan konfigurasi file model dan controller )

ini dalah lanjutan dari artikel saya sebelumnya . silahkan membaca artikel
  1. membuat-yii2-restfull-web-service ( bagian 1 : struktur folder )
  2. membuat-yii2-restfull-web-service ( bagian 2 : konfigurasi dan kostumasi file )
agar tidak bingungg saat membaca artikel ini .

Sebelumnya kita telah membuat folder api yang merupakan folder rest web service. untuk artikel berikut ini kita akan mencoba menambahkan tabel pada database dan membuat file Controler dan Model untuk web service yang telah di buat.

konfigurasi terlebih dahulu virtual host kamu atau setting documentroot websitemu mengarah pada
folder  api/web
berikut contoh virtual host di komputer lokal saya:

     DocumentRoot "D:\Project\public_html\yii2-advance\api\web"
     ServerName api.mamujupos.dev
     AllowOverride All
     Require all Granted
     
silahkan di sesuaikan dengan setingan hosting masing masing

Selanjutnya buatlah contoh tabel berikut:
tabel  artikel

    CREATE TABLE `artikel` (
       `id` int(11) NOT NULL,
       `judul` varchar(250) NOT NULL,
       `isi_artikel` longtext,
       `create_at` datetime NOT NULL,
       `update_at` datetime DEFAULT NULL
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Setelah membuat tabel artikel
buatlah file pada folder models dengan nama Artikel.php  atau kamu bisa memakai fasilitas gii milik yii. dengan menggunakan namespace api\models

setelah kita memiliki file model  Artikel.php  kurang lebih seperti ini :

<?php
namespace api\models;
use Yii;
class Artikel extends \yii\db\ActiveRecord
{
    public static function tableName()
    {
        return 'artikel';
    }

    public function rules()
    {
        return [
            [['id', 'judul', 'create_at'], 'required'],
            [['id'], 'integer'],
            [['isi_artikel'], 'string'],
            [['create_at', 'update_at'], 'safe'],
            [['judul'], 'string', 'max' => 250],
        ];
    }
} ?>

Selanjutnya buatlah file ArtikelController.php pada folder api/controllers. atau memakai fasilitas gii , jangan lupa ganti baseClass pada creat controller gii menjadi   yii\rest\Controller
kurang lebih seperti ini hasil generate gii nya :

<?php
namespace api\controllers;
class ArtikelController extends \yii\rest\ActiveController
{
    public function actionIndex()
    {
        return $this->render('index');
    }
}

ubah script tersebut menjadi :

<?php
namespace api\controllers;
class ArtikelController extends \yii\rest\ActiveController
{
   public $modelClass = 'api\models\Artikel';
}


Kita sudah dapat mengelolah tabel artikel dengan metode berikut:

GET /artikel                                               : Daftar semua artikel halaman demi halaman;
HEAD /artikel                                            : Menunjukkan informasi ikhtisar daftar artikel;
POST /artikel                                             : Buat artikel baru;
GET /artikel/123                                        : Kembalikan rincian artikel 123;
HEAD /artikel/123                                     : Tampilkan informasi ikhtisar artikel 123;
PATCH /artikel/123 and PUT /books/123  : Perbarui artikel 123;
DELETE /artikel/123                                 : Hapus artikel 123 ;
OPTIONS /artikel                                       : Tunjukkan verba yang didukung mengenai artikel;
OPTIONS /artikel/123                                : Tunjukkan verba yang didukung mengenai  artikel / 123.


Kamu juga dapat mengakses API melalui browser Web dengan memasukkan
http: // <nama webservice> / artikel.    : untuk yang sudah mengkonfigurasi virtual host / root document serta mengaktivkan fitur prety Url di yii2 framework.

Kamu juga bisa mencoba mengakses api menggunakan plugin ekstensi crome : postman atau aplikasi Http Maste Ekspress







Artikel ini saya buat berdasar refrensi dan tutorial dari berbagai sumber
Sumber saya mempelajari Yii2 restfull web service :
⇨ http://www.hafidmukhlasin.com/2015/05/18/yii2-angularjs1-as-web-client-yii-2-0-as-web-service-restful/
⇨ http://budiirawan.com/setup-restful-api-yii2/

Comments

Popular posts from this blog

Format tanggal dan jam pada bahasa pemrograman PHP (Date Format)

PHP (PHP: Hypertext Processor) Merupakan salah satu bahasa pemrograman yang sangat dikenal di kalangan programer. dan versi PHP paling terbaru pada tahuin postingan ini dibuat adalah versi 7.3. Artikel kali ini berkaitan dengan salah satu parameter pada fungsi yang sering digunakan untuk menampilkan maupun memformat output tanggal dan jam (waktu). beberapa fungsi yang sering digunakan diantaranya date() dan date_format(). Fungsi date() fungsi date() umumnya digunakan untuk mengambil waktu dari sytem / waktu server. fungsi date memiliki beberapa parameter diantaranya: $format: Digunakan untuk menentukan bentuk output waktu yang di inginkan. $timestamp:  (Opsional)  Nilai satuan waktu dalam UNIX sytem , bertipedata integer. Fungsi date_format() fungsi date_format() adalah fungsi untuk merubah bentuk output dari variable yang bertipedata date. fungsi ini biasanya didahului dengan fungsi date_create(),   yaitu salah satu fungsi php yang membuat...

Merubah Folder Publik Pada Laravel 5.8

Laravel merupakan salah satu framework yang saat ini sedang ramai digunakan, Laravel memiliki struktur direktori / folder yang cukup mudah dipahami bahkan kita bisa membuat custom folder sendiri sesuai keperluan. Kali ini saya ingin berbagi hal yang saya dapat setelah mempelajari laravel dan berkeliling dari situs ke situs. yaitu bagaimana merubah folder publik pada laravel (saya menggunakan laravel v5.8). Sebagai Catatan umumnya setiap webserver selalu mencari & membaca terlebih dahulu file index pada publik direktori (folder) pada website. dan pada laravel terletak pada folder public.  Berikut Contoh struktur folder pada laravel : / /app /bootstrap /config /database /public     /index.php /resources /routes /storage Namaun pada saat kita akan mengupload / deploy website kita ke server Hosting yang pada umumnya menggunakan nama folder public_html . tentu suatu hal yang mungkin membuat kita sedikit bingung untuk merubah nama folder dari project kita ka...

Cara Merubah Remote Git Repository Pada Local Repository

Pada artikel kali ini saya akan membahas tentang bagaimana cara merubah alamat repository pada git repository. Hal ini saya lakukan karena mempercepat dalam proses pengerjaan fitur fitur dasar seperti fitur login , register, reset password, dan lain lain. Untuk itu saya memiliki backup base project dan mengcopynya saat memulai sebuah project baru. pertama tama kita list dulu untuk memeriksa repository apa yang terpakai saat ini dengan mengetikkan perintah pada root project : $ git remote -v  dan akan tampil list repository aktif saat ini , sebagai contoh: origin https: //your.git.repo.example.com/user/repository.git (fetch) origin https: //your.git.repo.example.com/user/repository.git (push) untuk mengubah remote reposiroty di atas kita perlu mempersiapkan url atau remote repository yang baru , caranya copy / ambil alamat repository yang ingin di tuju , misalnya dari bitbucket : https: //yourbitbucketuser@bitbucket.org/username/example_target.git Setelah memiliki alamat repository ...