laravelを勉強し始めて、https://readouble.com/laravel/5.1/ja/quickstart.htmlこのチュートリアルをcloud9上でしています。
<問題>
inputタグタスクを書き込んで「タスク追加」ボタンを押す
↓
ERR_SSL_PROTOCOL_ERROR発生
↓
(ブラウザーの)戻るボタンで入力画面にもどる
↓
戻った画面(タスク入力画面)でreload
↓
タスクが追加される
ググって出てくる「cookie,キャッシュを消す」をしても解決しないので、ここで質問させていただきました。
laravel versionは5.1です。下記に必要最低限と思われるファイルを記載しました、他にも「~~のファイルみせてくれ」という要望がありましたら、言ってください。
よろしくお願いします。
app/Http/routes.php
<?php use App\Task; use Illuminate\Http\Request; /* |-------------------------------------------------------------------------- | Application Routes |-------------------------------------------------------------------------- | | Here is where you can register all of the routes for an application. | It's a breeze. Simply tell Laravel the URIs it should respond to | and give it the controller to call when that URI is requested. | */ Route::get('/',function(){ $tasks = Task::orderBy('created_at' , 'asc')->get(); return view('tasks',[ 'tasks'=>$tasks ]); }); Route::post('tutorial/public/task',function(Request $request){ $validator = Validator::make($request->all(),[ 'name' => 'required|max:255', ]); if($validator->fails()){ return redirect('/') ->withInput() ->withErrors($validator); //→これすると$errorsという変数使用可能になる } $task = new Task; $task->name = $request->name; $task->save(); return redirect('/'); }); Route::delete('tutorial/public/task/{id}',function($id){ Task::findOrFail($id)->delete(); return redirect('/'); }); // Route::get('/', function () { // return view('welcome'); // });
resources/views/layouts/app.blade.php
<!DOCTYPE html> <html lang="en"> <head> <title>Laravel Quickstart - Basic</title> <!-- CSSとJavaScript --> </head> <body> <div class="container"> <nav class="navbar navbar-default"> <!-- ナビバーの内容 --> </nav> </div> @yield('content') </body> </html>
resources/views/tasks.blade.php
@extends('layouts.app') @section('content') <!-- Bootstrapの定形コード… --> <div class="panel-body"> <!-- バリデーションエラーの表示 --> @include('common.errors') <!-- 新タスクフォーム --> <form action="tutorial/public/task" method="POST" class="form-horizontal"> {{ csrf_field() }} <!-- タスク名 --> <div class="form-group"> <label for="task" class="col-sm-3 control-label">Task</label> <div class="col-sm-6"> <input type="text" name="name" id="task-name" class="form-control"> </div> </div> <!-- タスク追加ボタン --> <div class="form-group"> <div class="col-sm-offset-3 col-sm-6"> <button type="submit" class="btn btn-default"> <i class="fa fa-plus"></i> タスク追加 </button> </div> </div> </form> </div> <!-- TODO: 現在のタスク --> @if (count($tasks) > 0) <div class="panel panel-default"> <div class="panel-heading"> 現在のタスク </div> <div class="panel-body"> <table class="table table-striped task-table"> <!-- テーブルヘッダー --> <thead> <th>Task</th> <th> </th> </thead> <!-- テーブルボディー --> <tbody> @foreach ($tasks as $task) <tr> <!-- タスク名 --> <td class="table-text"> <div>{{ $task->name }}</div> </td> <td> <!-- TODO: 削除ボタン --> <form action="tutorial/public/task/{{ $task->id }}" method="POST"> {{ csrf_field() }} {{ method_field('DELETE') }} <button>タスク削除</button> </form> </td> </tr> @endforeach </tbody> </table> </div> </div> @endif @endsection
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/08/06 09:37
2017/08/09 16:27