[英]SQLSTATE[HY000]: General error: 1364 Field 'photo' doesn't have a default value in laravel 5.5
[英]SQLSTATE[HY000]: General error: 1364 Field 'banner_photo' doesn't have a default value
注意:我正在使用 laravel 7.x ,我想将照片插入我的数据库,但错误提示,一般错误:1364 字段 'banner_photo' 没有默认值
这是我的index.blade.php文件
@extends('admin.layout.master')
@section('content')
<div class="container-scroller">
<!-- partial:partials/_navbar.html -->
@include('admin.layout.nav')
<!-- partial -->
<div class="container-fluid page-body-wrapper">
<!-- partial:partials/_sidebar.html -->
@include('admin.layout.sidebar')
<!-- partial -->
<div class="main-panel">
<div class="content-wrapper">
<!-- Page Title Header Starts-->
<div class="row page-title-header">
<div class="col-12">
<div class="page-header">
<h4 class="page-title">Dashboard</h4>
</div>
</div>
</div>
<!-- Page Title Header Ends-->
<div class="row">
<div class="col-md-12">
<div class="row">
<div class="col-md-12 grid-margin">
<div class="card">
<div class="card-body">
<div class="d-flex justify-content-between">
<h4 class="card-title mb-0">Banner</h4>
<a href="#"><small>Show All</small></a>
</div>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Est quod cupiditate esse fuga</p>
<div class="table-responsive">
<table class="table table-striped table-hover">
<thead>
<tr>
<th>ID</th>
<th>H4 Title</th>
<th>H2 Title</th>
<th>Paragraph</th>
<th>Image</th>
<th>Edit</th>
<th>Delete</th>
</tr>
</thead>
<tbody>
@foreach($banners as $row)
<tr>
<td>{{$row->id}}</td>
<td>{{$row->h4_title}}</td>
<td>{{$row->h2_title}}</td>
<td>{{$row->banner_paragraph}}</td>
<td>{{$row->banner_image}}</td>
<td><button type="submit" class="btn btn-primary"><i class="fas fa-edit"></i>EDIT</button></td>
<td><button type="submit" class="btn btn-danger"><i class="far fa-trash-alt"></i>DELETE</button></td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- content-wrapper ends -->
<!-- partial:partials/_footer.html -->
@include('admin.layout.footer')
<!-- partial -->
</div>
<!-- main-panel ends -->
</div>
<!-- page-body-wrapper ends -->
</div>
<!-- container-scroller -->
@endsection
这是管理面板横幅customize.blade.php
@extends('admin.layout.master')
@section('content')
<div class="container-scroller">
@include('admin.layout.nav')
<div class="container-fluid page-body-wrapper">
@include('admin.layout.sidebar')
<div class="main-panel">
<div class="content-wrapper">
<div class="row">
<div class="col-md-12 d-flex align-items-stretch grid-margin">
<div class="row flex-grow">
<div class="col-12">
<div class="card">
<div class="card-body">
<h4 class="card-title">Banner Customize</h4>
@if(count($errors) >0)
<div class="alert alert-danger">
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<ul>
@foreach($errors->all() as $error)
<li>{{$error}}</li>
@endforeach
</ul>
</div>
@endif
@if(\Session::has('success'))
<div class="alert alert-success">
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<p>{{\Session::get('success')}}</p>
</div>
@endif
<form method="post" action="{{route('store.banner')}}" class="form-sample" enctype="multipart/form-data">
@csrf
<div class="form-group">
<label for="exampleInputEmail1">H4 Title</label>
<input type="text" class="form-control" id="exampleInputEmail1" placeholder="Enter H4 Title" name="h4_title">
</div>
<div class="form-group">
<label for="exampleInputEmail1">H2 Title</label>
<input type="text" class="form-control" id="exampleInputEmail1" placeholder="Enter H2 Title" name="h2_title">
</div>
<div class="form-group">
<label for="exampleInputEmail1">Paragraph</label>
<input type="text" class="form-control" id="exampleInputEmail1" placeholder="Enter Paragraph" name="banner_paragraph">
</div>
<div class="form-group">
<input type="file" id="exampleInputEmail1" name="banner_photo">
</div>
<button type="submit" class="btn btn-success">Submit</button>
<button type="submit" class="btn btn-light">Cancle</button>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
@include('admin.layout.footer')
</div>
</div>
</div>
@endsection
这是我的路线web.php文件
<?php
use Illuminate\Support\Facades\Route;
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
Route::get('/', function () {
return view('index');
});
Route::get('/contact-us', function () {
return view('contactus');
});
Route::get('/tours', function () {
return view('tours');
});
// Admin panel Pages Routes
Route::get('/admin', function () {
return view('admin/index');
});
Route::get('/admin/bannercustomize', function () {
return view('admin/layout/bannercustomize');
});
// Controller routes
// Route::resource('banners', 'BannerController@index');
// // Route::get('/', 'BannerController@index');
Route::post('store/banner','BannerController@store')->name('store.banner');
Route::get('/admin','BannerController@index')->name('admin.index');
这是我的 controller BannerController.php文件
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Banner;
class BannerController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
// $banners = Banner::all()->toArrary();
// return view('admin.index', ['banners' =>$banners]));
$banners = Banner::all();
return view('admin.index',compact('banners'));
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
return view('admin.layout.bannercustomize');
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
$this->validate($request, [
'h4_title' => 'required',
'h2_title' => 'required',
'banner_paragraph' => 'required',
]);
$banner = new Banner([
'h4_title' => $request->get('h4_title'),
'h2_title' => $request->get('h2_title'),
'banner_paragraph' => $request->get('banner_paragraph'),
]);
if ($request->has('banner_image')) {
$image = $request->file('banner_image');
$name = hexdec(uniqid()).'_'.time();
$folder = '/image/banner_image/';
$filePath = $folder . $name. '.' . $image->getClientOriginalExtension();
$this->uploadOne($image, $folder, 'public', $name);
$banner->banner_image = $filePath;
}
$banner->save();
return redirect()->back()->with('success', 'Data Added');
}
/**
* 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)
{
//
}
}
请帮助我找到错误和此错误的解决方案
你必须改变
banner_image
至
banner_photo
改变
if ($request->has('banner_photo')) {
$image = $request->file('banner_photo');
....
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.