После переопределения имени таблицы в конструкции __ оно не создается в соответствии с ожиданиями. хранится только единственное значение по умолчанию.
Контроллер: "TestMeController"
use App\TestMe;
use Illuminate\Http\Request;
use Log;
class TestMeController extends Controller
{
public function setCreateData() {
config(['app.temp_db' => "new_test_me"]);
$test_me_data = ["data" => "new table data"];
$data = TestMe::create( $test_me_data );
dd($data);
}
}
Модель: "TestMe"
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class TestMe extends Model
{
protected $table = "test_me";
protected $guarded = ['id'];
protected $connection = "mysql";
public function __construct() {
if( config('app.temp_db') != "") {
$this->table = config('app.temp_db');
}
}
}
OUTPUT
.....
#original: array:3 [
"updated_at" => "2020-01-06 13:34:18"
"created_at" => "2020-01-06 13:34:18"
"id" => 100
]
.....
добавлено только значение по умолчанию, я должен попытаться получить исключение, но здесь нет исключений.