문제
Hello Im Laravel에서 New와 IM 데이터베이스에 데이터를 데이터베이스에 추가 할 수 없습니다.나는 단순한 하나의 형태로 하나의 형태로 간단한 하나의 뷰를 가지고 있습니다.컨트롤러에는 2 개의 동작이 있습니다 (보기 양식 및 DB 행 생성).
app / routes.php
Route::get('/', 'FrontendController@index');
Route::post('/', 'FrontendController@submit');
.
app / views / 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');
}
}
.
앱 / 모델 / inzerat.php
<?php
class Inzerat extends Eloquent {
protected $table = 'inzeraty';
public $timestamps = false;
}
.
제출 버튼을 클릭 한 후 오류
Call to undefined method Illuminate\Http\Request::post()
.
IM LALAVEL 4.0
여기서 뭘 잘못 했는가?당신의 도움을 주셔서 감사합니다.
해결책
LARAVLE에서 :: GET ()를 사용하여 요청에서 모든 입력을 검색합니다.
를 변경해야합니다$inzerat->nazev_firmy = Input::post('nazev_firmy');
.
to :
$inzerat->nazev_firmy = Input::get('nazev_firmy');
. 제휴하지 않습니다 StackOverflow