2016-08-03 4 views
0

Я создал маршрут к простой странице контактов. Я использую контроллер для сохранения данных в базе данных и отображения их на одной странице. Когда я отправляю форму, я получаю пустую страницу, но я хочу, чтобы пользователь оставался на контакте. Я попытался передать индексный указатель, но затем получаю ошибки.Список контроллеров Laravel 5.2 возвращает пустую страницу

Файлы

route.php

Route::get('contact', '[email protected]'); 

Route::post('contact', '[email protected]'); 

ContactController.php

<?php 

namespace App\Http\Controllers; 

use Illuminate\Http\Request; 
use App\Http\Requests; 
use App\Contact; 

class ContactController extends Controller 
{ 
    public function index() { 
     $contacts = Contact::orderBy('created_at', 'asc')->get(); 
     return view('/contact', [ 'contacts' => $contacts ]); 
} 
    public function create(Request $request) { 
    $name = $request->input('name'); 
    $contact = new Contact; 
    $contact->name = $name; 
    $contact->save(); 
    #return view('/contact'); 
} 
} 

contact.php

<?php 

Namespace App; 

use Illuminate\Database\Eloquent\Model; 

class Contact extends Model 
{ 
    protected $fillable = ['name']; 
} 

?> 

contact.blade.php

@extends('layouts.app') 

@section('content') 
<div class="container"> 
    <div class="row"> 
     <div class="col-md-10 col-md-offset-1"> 
      <div class="panel panel-default"> 
       <div class="panel-heading">Contact page</div> 

       <div class="panel-body"> 
        {!! Form::open(array('url' => 'contact')) !!} 
      {!! Form::label('name', 'Name') !!} 
      {!! Form::text('name'); !!} 
      {!! Form::submit('Submit'); !!} 
      {!! Form::close() !!} 
      @if (count($contacts) > 0) 
      @foreach ($contacts as $contact) 
      {{ $contact->name }} 
       @endforeach 
       @endif 
     </div> 
      </div> 
     </div> 
    </div> 
</div> 
@endsection 
+0

Просто 'view ('контакт' .....)' удалить косую черту! –

+0

Я просто написал тот же ответ, что и Исмаил RBOUH говорит, что remeber to acces - с точкой вместо косой черты и без обозначения blade.php –

+0

Это не решает проблему. – Xenioz

ответ

0

Попробуйте поставить contact.blade.php внутри рассматривает папку и использовать view('contact', [...]) вместо view('/contact');, вам не нужно слэш и добавить return back() к create методу:

public function create(Request $request) { 
    $name = $request->input('name'); 
    $contact = new Contact; 
    $contact->name = $name; 
    $contact->save(); 
    return back(); 
} 
+0

Это не решает проблему, так как у меня уже есть представление в правильном месте, и я все равно получаю пустой стр. После обновления браузера я возвращаюсь на индексную страницу. – Xenioz

+0

Попробуйте обновленный ответ! @Xenioz –

+0

Возврат назад(); работает, спасибо. – Xenioz

Смежные вопросы