Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

153
Visualizações
User ID parameter in Laravel Request

I have an admin where he is able to create and update users. I made a new Form request called UserUpdateRequest. How can I pass the user id so that it can update user detail? Here are my rules:

// UserUpdateRequest 
public function rules()
{
    return [
        'firstname' => 'required|min:2|max:255',
        'lastname' => 'required|min:2|max:255',
        'username' => 'required|max:255',
        'password' => 'required|min:6|confirmed',
        'email' => 'required|email|max:255|unique:users,email,????',
        'contact' => 'required|integer',
        'gender' => 'required|in:m,f',
        'role_id' => 'required|exists:roles,id',
    ];
}

// Controller
public function update(UserUpdateRequest $request, User $user)
{
    $user->update([
        'firstname' => request('firstname'),
        'lastname' => request('lastname'),
        'username' => request('username'),
        'email' => request('email'),
        'contact' => request('contact'),
        'gender' => request('gender'),
        'role_id' => request('role_id'),
    ]);

    session()->flash('message', 'User has been successfully added.');

    return redirect('/users/' . $user->id);
}

'required|email|max:255|unique:users,email,????', is where I am confused.

about 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Here's what i did:

View:

<input type="hidden" value="{{ $user->id }}" name="user_id">

Controller:

public function rules()
    {
        $id = $this->request->get('user_id');

    return [
        'firstname' => 'required|min:2|max:255',
        'lastname' => 'required|min:2|max:255',
        'username' => 'required|max:255',
        'email' => 'required|email|max:255|unique:users,email,'.$id,
        'contact' => 'required|integer',
        'gender' => 'required|in:m,f',
        'role_id' => 'required|exists:roles,id',
    ];
}
about 4 years ago · Santiago Trujillo Relatório

0

routes/web.php

Route::get('/user/edit/{id}', 'UserController@edit')->name('user.edit');
Route::post('/user/update/{id}', 'UserController@update')->name('user.update');

FormRequest

'email' => ['required',Rule::unique('users')->ignore($this->route('id'))],
about 4 years ago · Santiago Trujillo Relatório

0

Since admin is changing users I assume you already have user data on your view file.

you can pass a hidden input on your form.

<input type="hidden" value="{{$user->id}}" name="user_id" />

and then receive it on your controller.

$user_id = $request->input('user_id');
$user = \App\User::find($user_id); 
//validation comes here

Edit Depending on new information

public function update(UserUpdateRequest $request, User $user) 

should be

public function update(Request $request, User $user) 

and you have to call Request on your controller;

use Illuminate\Http\Request;

after that you can get your request as

dd($request->all());

but if you are using a special request post your UserUpdateRequest class.

about 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda