Perkenalan
ORM pada WPFrame didasarkan pada Laravel Capsule. Anda dapat berinteraksi dengan database dengan mudah melalui ORM(object-relational mapper). Untuk dokumentasi penggunaan dan susunan kode kemungkinan akan cukup mirip,, jadi Anda dapat mempelajari kode ORM melalui situs laravel ORM (Kunjungi).
Membuat Model
Anda dapat membuat file Model secara manual ataupun menggunakan perintah Wpfx melalui terminal / konsole. Model pada WPFrame berada dibawah namespace WPFP\App\Models
.
Menggunakan Model Default WPFrame
Contoh implementasi dari kode Model default WPFrame:
<?php namespace WPFP\App\Models; use WPFP\Boot\System\Model; class M_test extends Model { // Add Something public function __construct() { // Add Something } public function getUsers() { // Query Builder - Cake PHP $getResults = [ 'name' => 'Andrian', 'email' => '[email protected]', ]; return $getResults; } } // Add Something
Pada file Controller, Anda dapat memanggil Model yang tersedia menggunakan method $this->model():
<?php namespace WPFP\App\Controllers; use WPFP\App\Models\M_test; use WPFP\Boot\System\Controller; class Wpf_dashboard extends Controller { public $M_test; public function __construct() { $this->model('m_test'); $this->M_test = new M_test(); } public function index() { $users = $this->M_test->getUsers(); var_dump($users); } }
Menggunakan Eloquent Model
Jika Anda ingin menggunakan Eloquent Model dapat mengimplementasikan seperti contoh kode berikut:
<?php namespace WPFP\App\Models; use Illuminate\Database\Eloquent\Model; class M_test_eloquent extends Model { public $timestamps = false; /** * The database table used by the model. * * @var string */ protected $table = "wp_users"; /** * The attributes that are mass assignable. * * @var array */ protected $fillable = [ 'user_login', 'user_pass', 'user_nicename', 'user_email', 'user_registered' ]; }
Pada file Controller, Anda dapat memanggil Model yang tersedia:
<?php namespace WPFP\App\Controllers; use WPFP\App\Models\M_test_eloquent; use WPFP\Boot\System\Controller; class Wpf_dashboard extends Controller { public $M_test_eloquent; public function __construct() { // Add Something } public function index() { $users = M_test_eloquent::all(); var_dump($users); } }