无法从Laravel表单存储有关DB的信息

无法从Laravel表单存储有关DB的信息

问题描述:

I have this application using Laravel and im trying to register some information from the Form Class to my DB through the store method in the controller, but for some reason it throws me some error. I cant even print the request coming from the form, as usual. Can someone point me a possible mistake tht i am making? I am new to Laravel

This is my form on a view called create.blade.php

@extends('layouts.app')


@section('content')



    <p><b>Register your house</b></p>


            {!! Form::open(['method'=>'post', 'action'=>'AdminHouseController@store']) !!}

                {!! Form::text('house_address', null,['placeholder'=>'House Address']) !!}

                <input type="hidden" name="house_admin" value="{{Auth::user()->id}}">

                {!! Form::number('nflatmates', null, ['placeholder'=>'How many flatmates']) !!}

                {!! Form::submit('Register', ['class'=>'ui-btn buttonDefault']) !!}

            {!! Form::close() !!}




@stop

This is my controller AdminHouseController.php

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\House;
use App\User;

class AdminHouseController extends Controller
{

    public function index(){




    }


    public function create($role_id){

        if($role_id == 1){

            return view('admin.house.create');

        }else{

            return redirect('home');

        }

    }


    public function store(Request $request){

        House::create($request->all());

        return redirect('home');

    }

    public function show($id){

    }

    public function edit($id){

    }

    public function update(Request $request, $id){

    }

    public function destroy($id){

    }
}

And this is my router file web.php

use App\User;

Route::get('/', function () {
    return view('welcome');
});


Auth::routes();

Route::get('/home', 'HomeController@index')->name('home');

Route::get('/house/{role_id}', 'AdminHouseController@create')->name('house');

Route::post('store', [
    'uses' => 'AdminHouseController@store'
]);

you might be missing the {{ csrf_field() }} in the form this used to protect the form from tampering