Как сделать так, чтоб в форме отображалось одно поле таблицы, а отправлялось другое?

В Laravel можно достичь этого, используя возможности фасада Request и методов модели. Давайте рассмотрим пример с использованием модели "User" и формы для создания нового пользователя.

1. Создайте маршрут:

   Route::post('/users/store', 'UserController@store');

2. В UserController создайте метод store:

   public function store(Request $request)
   {
       $userData = $request->validate([
           'name' => 'required',
           'email' => 'required|email',
           'password' => 'required|min:6',
       ]);

       $userData['password'] = bcrypt($userData['password']);

       User::create($userData);

       return redirect('/users')->with('success', 'Пользователь успешно создан');
   }

3. Создайте представление для формы создания нового пользователя (например, в resources/views/users/create.blade.php):

   <form action="/users/store" method="POST">
       @csrf

       <div>
           <label for="name">Имя</label>
           <input type="text" id="name" name="name">
       </div>

       <div>
           <label for="email">E-mail</label>
           <input type="email" id="email" name="email">
       </div>

       <div>
           <label for="password">Пароль</label>
           <input type="password" id="password" name="password">
       </div>

       <button type="submit">Создать пользователя</button>
   </form>

4. В данном примере, в форме отображаются поля "name", "email" и "password". Однако, в контроллере мы изменяем данные перед сохранением в базу данных. Это происходит посредством присвоения значения 'password' с зашифрованным паролем с помощью функции bcrypt.

Таким образом, при заполнении формы и отправке данных, поле 'password' будет содержать зашифрованный пароль, который будет сохранен в базе данных через метод create модели User.