Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bisakah saya menggunakan lapisan basis data Laravel secara mandiri?

IMO, transisi ke pendekatan OOP langkah demi langkah benar-benar valid.

Untuk pertanyaan Anda:

Ya, Anda dapat menggunakan Eloquent standalone.

Berikut adalah situs pembuat paket:https://packagist.org/packages/illuminate/database Tambahkan "illuminate/database": "5.0.*@dev" ke composer.json . Anda dan jalankan composer update .Sekarang Anda harus mem-bootstrap Eloquent. (https://github.com/illuminate/database )

Berikut ini disalin dari readme repo:

Petunjuk Penggunaan

Pertama, buat instance manajer "Kapsul" baru. Capsule bertujuan untuk membuat konfigurasi library untuk penggunaan di luar framework Laravel semudah mungkin.

use Illuminate\Database\Capsule\Manager as Capsule;

$capsule = new Capsule;

$capsule->addConnection([
    'driver'    => 'mysql',
    'host'      => 'localhost',
    'database'  => 'database',
    'username'  => 'root',
    'password'  => 'password',
    'charset'   => 'utf8',
    'collation' => 'utf8_unicode_ci',
    'prefix'    => '',
]);

// Set the event dispatcher used by Eloquent models... (optional)
use Illuminate\Events\Dispatcher;
use Illuminate\Container\Container;
$capsule->setEventDispatcher(new Dispatcher(new Container));

// Set the cache manager instance used by connections... (optional)
$capsule->setCacheManager(...);

// Make this Capsule instance available globally via static methods... (optional)
$capsule->setAsGlobal();

// Setup the Eloquent ORM... (optional; unless you've used setEventDispatcher())
$capsule->bootEloquent();

Setelah instans Kapsul didaftarkan. Anda dapat menggunakannya seperti ini:

Menggunakan Pembuat Kueri

$users = Capsule::table('users')->where('votes', '>', 100)->get();

Metode inti lainnya dapat diakses langsung dari Kapsul dengan cara yang sama seperti dari fasad DB:

$results = Capsule::select('select * from users where id = ?', array(1));

Menggunakan Pembuat Skema

Capsule::schema()->create('users', function($table)
{
    $table->increments('id');
    $table->string('email')->unique();
    $table->timestamps();
});

Menggunakan ORM yang Fasih

class User extends Illuminate\Database\Eloquent\Model {}

$users = User::where('votes', '>', 1)->get();

Untuk dokumentasi lebih lanjut tentang penggunaan berbagai fasilitas database yang disediakan perpustakaan ini, lihat dokumentasi kerangka kerja Laravel.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kesalahan umum MySQL:"Mendapat kesalahan saat membaca paket komunikasi"

  2. MySQL LOAD DATA LOCAL INFILE tidak diizinkan melalui ODBC

  3. Apa perbedaan antara delete from table_a dan truncate table table_a di MySQL?

  4. Database MySQL tidak akan dimulai di XAMPP Manager-osx

  5. Cara yang benar untuk mengatur database MYSQL untuk pencarian tag terkait?