За последние 24 часа нас посетили 22066 программистов и 1114 роботов. Сейчас ищут 737 программистов ...

Не работает store

Тема в разделе "Laravel", создана пользователем lordconst, 19 мар 2020.

  1. lordconst

    lordconst Новичок

    С нами с:
    7 дек 2019
    Сообщения:
    151
    Симпатии:
    1
    Имеется форма со следующими элементами:
    HTML:
    1. <form action="{{ route('room.store') }} method="post" enctype="multipart/form-data">
    2.         @csrf
    3.         <h3>Добавить помещение</h3>
    4.         <div class="form-group">
    5.             <input type="text" class="form-control" name="name" placeholder="Название" required>
    6.         </div>
    7.         <div class="form-group">
    8.             <textarea name="description" rows="10" class="form-control" placeholder="Описание..." required></textarea>
    9.         </div>
    10.         <div class="form-group">
    11.             <input type="text" class="form-control" name="square" placeholder="Площадь (числом), кв. м." required>
    12.         </div>
    13.         <div class="form-group">
    14.             <input type="text" class="form-control" name="rent_price" placeholder="Стоимость аренды, руб/мес" required>
    15.         </div>
    16.         <div class="form-group">
    17.             <input type="file" name="img">
    18.         </div>
    19.  
    20.         <input type="submit" value="Создать помещение" class="btn btn-outline-success">
    21.     </form>
    Далее, метод store у контроллера Room:
    PHP:
    1. public function store(Request $request)
    2.     {
    3.         $room = new Room();
    4.         $room->name = $request->name;
    5.         $room->description = $request->description;
    6.         $room->square = $request->square;
    7.         $room->rent_price = $request->rent_price;
    8.  
    9.         if($request->file('img')) {
    10.             $path = Storage::putFile('public', $request->file('img'));
    11.             $url = Storage::url($path);
    12.             $room->image = $url;
    13.         }
    14.  
    15.         $room->save();
    16.  
    17.         return redirect()->route('room.index');
    18.     }
    Ввожу данные в форму, меня перекидывает на страницу http://myfirstapp/rooms method=?_to...escription=123&square=32&rent-price=7500&img=
    В чем дело? Что сделал не так?
    На всякий случай маршрут:
    PHP:
    1. Route::post('room/', 'RoomController@store')->name('room.store');
    При этом в бд запись не делается
     
  2. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.825
    Симпатии:
    738
    Адрес:
    Татарстан
    В форме экшен не закрыт нормально кавычками, тому не видит метод post, а по умолчанию всегда get. Что у вас и происходит
     
    artoodetoo нравится это.