سلام من از پکیج لاراول 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);
وقتی شما داری از 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 رو ایمپورت کنی
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟