database.php
'pgsql2' => [
'driver' => 'pgsql',
'url' => env('DATABASE_URL'),
'host' => env('DB_PGSQL2_HOST', 'localhost'),
'port' => env('DB_PORT', '5432'),
'database' => env('DB_PGSQL2_DATABASE', 'forge'),
'username' => env('DB_PGSQL2_USERNAME', 'forge'),
'password' => env('DB_PGSQL2_PASSWORD', ''),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => true,
],
в .env
DB_CONNECTION=pgsql
DB_HOST=127.0.0.1
DB_PORT=5432
DB_DATABASE=first_db
DB_USERNAME=postgres
DB_PASSWORD=pswd1234
#second
DB_PGSQL2_DATABASE=second_db
DB_PGSQL2_USERNAME=postgres
DB_PGSQL2_PASSWORD=pswd1234
в Model
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class LastPdfTable extends Model
{
//
public $timestamps = false;
protected $connection= 'pgsql2';
}
Я использовал 2 методы тоже
$lastPdfTable = DB::connection('pgsql2')->table('last_pdf_tables')->orderBy('id', 'desc')->first();
//$lastPdfTable = LastPdfTable::latest('id')->first();
Привет! На второй конфигурации укажите connection, host, port к второй БД а затем после изменения необходима очистить кеш (php artisan co:ca) а также с начало в конфиг файле лары указать вторую конфигурации к БД и в модели и в миграционных файлах нужно указать $connection для того чтобы он видел вашу БД, и убедитесь что ваша таблица существует в той или и ной БД которой вы создали.
Таблица last_pdf_tables не существует
Существует . Если Я использую second_db как main DB .env все работают четко
Ну попробуй php artisan optimize. И в тинкере проверь что вернет dd(config('database'));
Обсуждают сегодня