Несколько вставок в одном запросе Laravel

У меня есть две таблицы: таблица пользователей и таблица посещаемости. Вот что я хочу сделать:
При добавлении пользователя в таблицу «Пользователь» таблица посещаемости также будет обновлена ​​(идентификатор пользователя таблицы пользователя будет добавлен в таблицу посещаемости в качестве внешнего ключа), первичным ключом моей таблицы «Пользователь» является «Автоинкремент», поэтому я я не могу вставить его вручную в таблицу посещаемости, что мне делать? Есть ли какой-нибудь чит в laravel, который может сделать это легко?

Вот мой контроллер для регистрации

    public function register()
{
$myemployee=Employee::all();
return View::make('registration',compact('myemployee'));
}

public function registerEmp()
{
$input = Input::all();$command = new Employee;
$command->firstname=$input['firstname'];
$command->lastname=$input['lastname'];
$command->position=$input['position'];
$command->save();

return Redirect::action('EmployeesController@register');}

Вот моя миграция

         public function up()
{
Schema::create('employees',function($table)
{
$table->increments('id');
$table->text('firstname');
$table->text('lastname');
$table->text('position');
$table->timestamps();

});

public function up()
{
Schema::create('attendances', function(Blueprint $table)
{
$table->integer('user_id')->unsigned();
$table->foreign('user_id')->references('id')->on('employees');
$table->timestamp('intime');
$table->timestamp('offtime');
});
}

Файл Employee.php

          <?php

class Employee extends Eloquent
{

}?>

0

Решение

Вы можете получить последний вставленный идентификатор в таблице пользователей, назначив значение переменной User :: create (), которое является статическим Illuminate \ Database \ Eloquent \ Model, переменной, а затем используйте эту переменную для вставки user_id в таблицу посещений. ,

Вот пример:

public function registerEmp() {
$input = Input::all();

// Create an employee.
$employee = Employee::create($input);

// Create an attendance entry as well.
Attendance::create([
'user_id'=>$employee->id,
// other columns...
]);

return Redirect::action('EmployeesController@register');}
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]