Класс модели называется User, но запись происходит в таблицу Users, хотя в модели нет упоминания этой таблицы. Как Laravel это делает?
Отдебажить не получилось. Упираюсь в функцию
Builder::insertGetId,
а она внутренняя.
[internal function]: Illuminate\Database\Query\Builder->insertGetId(Array, 'id')
use Illuminate\Database\Eloquent\Model;
class User extends Model
{
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable = [
'login', 'password_hash'
];
/**
* The attributes excluded from the model's JSON form.
*
* @var array
*/
protected $hidden = [
'password_hash',
];
}
//
$user = new User;
$user->login = $login;
$user->password_hash = $hash;
$user->save(); //Сохраняет в таблицу users
В миграции есть упоминание этой таблицы, но она никак не связана с моделью. Знатоки есть?
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateUsersTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('users', function (Blueprint $table) {
$table->increments('id');
$table->string('login')->unique();
$table->string('password_hash');
$table->timestamps();
});
}
/**