sql >> Base de Datos >  >> RDS >> Mysql

¿Puedo usar la capa de base de datos de Laravel de forma independiente?

En mi opinión, es absolutamente válido hacer la transición a un enfoque OOP paso a paso.

A su pregunta:

Sí, puede usar Eloquent de forma independiente.

Aquí está el sitio de empaquetado:https://packagist.org/packages/illuminate/database Agregar "illuminate/database": "5.0.*@dev" a su composer.json y ejecuta composer update .Ahora deberá iniciar Eloquent. (https://github.com/illuminate/database )

Lo siguiente se copia del archivo Léame del repositorio:

Instrucciones de uso

Primero, cree una nueva instancia de administrador de "cápsula". Capsule tiene como objetivo hacer que la configuración de la biblioteca para su uso fuera del marco de Laravel sea lo más fácil posible.

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();

Una vez registrada la instancia de Capsule. Puede usarlo así:

Uso del Generador de consultas

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

Se puede acceder a otros métodos básicos directamente desde la Cápsula de la misma manera que desde la fachada de la base de datos:

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

Uso del generador de esquemas

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

Usando el ORM Elocuente

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

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

Para obtener más documentación sobre el uso de las diversas funciones de base de datos que ofrece esta biblioteca, consulte la documentación del marco de Laravel.