مهدی شریفی
5 سال پیش توسط مهدی شریفی مطرح شد
1 پاسخ

استفاده از laravel eloquent

سلام من از پکیج لاراول eloquent بیرون لاروال استفاده کردم و کانکشن دیتابیس رو به شکل زیر تعریف کردم

$capsule = new Capsule();
$capsule->addConnection([
'driver' => DATABASE_DRIVER,
'host' => DATABASE_HOST,
'database' => DATABASE_NAME,
'username' => DATABASE_USERNAME,
'password' => DATABASE_PASSWORD,
'charset' => DATABASE_CHARSET,
'collation' => DATABASE_COLLECTION,
'prefix' => DATABASE_PREFIX,
]);

حالا اگه خودم بخوام یه sql بنویسم باید به کانکشن دسترسی داشته باشم در حال حاضر یه کانکشن جدا برای این نوشتم راهی داره با همین capsule هندل شه ؟؟؟ @mohsenbostan @ali.bayat @hesammousavi

$connection = new mysqli(DATABASE_HOST, DATABASE_USERNAME, DATABASE_PASSWORD, DATABASE_NAME);

react
تگ‌های محبوب
ثبت پرسش جدید
علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
1

وقتی شما داری از Eloquent استفاده میکنی
دیگه نباید به این شکل با دیتابیس کارکنی

ابتدا کپسول رو Instantite میکنی:

require "vendor/autoload.php";
use Illuminate\Database\Capsule\Manager as Capsule;
$capsule = new Capsule;
$capsule->addConnection([
"driver" => "mysql",
"host" =>"127.0.0.1",
"database" => "acl",
"username" => "root",
"password" => ""
]);
$capsule->setAsGlobal();
$capsule->bootEloquent();

و بعد به شکل زیر ازش استفاده میکنی:

$users = Capsule::table('users')->get();

و در قدم بعدی میتونی یه Model بسازی و مثل لاراول ازش استفاده کنی:

class User extends Illuminate\Database\Eloquent\Model {
// code goes here
}
$users = User::all();

اگر هم خواستی از مایگریشن ها استفاده کنی باید کلاس Illuminate\Database\Capsule\Manager رو ایمپورت کنی


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام