Laravel simple creando una nueva fila en la tabla
-
20-12-2019 - |
Pregunta
HELLO IM NEW EN LARIVE Y NO PUEDE AGREGAR DATOS EN LA BASE DE DATOS DE FORMULARIO.Tengo una vista simple con una sola forma.El controlador tiene 2 acciones (para el formulario de vista y para crear filas de DB).
aplicación / rutas.php
Route::get('/', 'FrontendController@index');
Route::post('/', 'FrontendController@submit');
aplicación / vistas / index.blade.php
{{Form::open(array('action'=>'FrontendController@submit','class'=>'form-horizontal','role'=>'form'))}}
{{Form::text('nazev_firmy',Input::old('nazev_firmy'), array('class'=>'form-control'))}}
{{Form::submit('Send', array('class'=>'btn btn-primary submit'))}}
{{Form::close()}}
/app/controllers/frontendcontroller.php
class FrontendController extends BaseController {
public function index()
{
return View::make('index');
}
public function submit()
{
$inzerat = new Inzerat;
$inzerat->nazev_firmy = Input::post('nazev_firmy');
$inzerat->save();
return View::make('index');
}
}
aplicación / modelos / inzerat.php
<?php
class Inzerat extends Eloquent {
protected $table = 'inzeraty';
public $timestamps = false;
}
error después de hacer clic en el botón enviar
Call to undefined method Illuminate\Http\Request::post()
estoy usando Laraver 4.0
¿Qué he hecho mal aquí?Gracias por su ayuda.
Solución
En Laravel, use :: Obtener () para recuperar todas las entradas de la solicitud.Solo necesitas cambiar
$inzerat->nazev_firmy = Input::post('nazev_firmy');
a:
$inzerat->nazev_firmy = Input::get('nazev_firmy');
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow