laravelにて、DBに値が保存されない
ralavel初心者です。
自作で情報共有アプリを作成しています。
フォームに値を入れて、新規投稿ボタンを押すとエラーが出てしまいます。
フォーム
エラー
コントローラーにて変数を定義してると思いますので、なぜエラーが出るのかが分かりません。
分かる方居ましたらお願い致します。
コントローラー
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\Sauna;
class SaunaController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
return view('saunas.sauna');
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
return view('saunas.create');
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
$sauna = new Sauna;
$sauna->$shop = $request->input('shop');
$sauna->$sauna = $request->input('sauna');
$sauna->$ice = $request->input('ice');
$sauna->$chill = $request->input('chill');
$sauna->$article = $request->input('article');
$sauna->save();
return redirect('sauna');
// dd($shop, $sauna);
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
//
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
//
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
{
//
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
//
}
}
ビュー
@extends('layouts.app')
@section('content')
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="public/css/content.css">
</head>
<body>
<div class="container">
<div class="row justify-content-center">
<div class="col-12">
<div class="card-body">
@if (session('status'))
<div class="alert alert-success" role="alert">
{{ session('status') }}
</div>
@endif
</div>
</div>
<div class="card" style="width: 35rem;">
<div class="card text-center">
<div class="card-body">
<p>サウナ新規投稿</p>
<form method="POST" action="{{route('store')}}">
@csrf
<div class="pt-3">
<div class="form-group">
<label>店名</label>
<textarea class="form-control" name="shop" rows="5"></textarea>
</div>
</div>
<div class="pt-3">
<div class="form-group">
<label>サウナ</label>
<textarea class="form-control" name="sauna" rows="5"></textarea>
</div>
</div>
<div class="pt-3">
<div class="form-group">
<label>水風呂</label>
<textarea class="form-control" name="ice" rows="5"></textarea>
</div>
</div>
<div class="pt-3">
<div class="form-group">
<label>外気浴</label>
<textarea class="form-control" name="chill" rows="5"></textarea>
</div>
</div>
<div class="pt-3">
<div class="form-group">
<label>その他</label>
<textarea class="form-control" name="article" rows="5"></textarea>
</div>
</div>
<div class="pt-3">
<div class="row center-block text-center">
<div class="col-6">
<button type="button" class="btn btn-outline-secondary btn-block">戻る</button>
</div>
<div class="col-6">
<input class="btn-info" type="submit" value="新規投稿">
</div>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
@endsection
<!-- <img src="iStock-1163221036.jpg" class="img-fluid" alt="..."> -->
モデル
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Sauna extends Model
{
use HasFactory;
}
データベース
0