私はLaravelを初めて使用しています。このエラーメッセージ "空の値からデフォルトオブジェクトを作成する"が表示されます。私は現在の施設を更新するはずですが、私は何もしていません。でも、SAVEボタン(edit_facilities.blade.php)をクリックすると、データベースのデータが更新されますが、私はやっていると思いますそれは間違っています..誰かが私のコードを改善する方法や訂正する方法を教えてください。 これは私のCONTROLLERです:"空の値からデフォルトオブジェクトを作成する" laravel 5
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Facilities;
use View;
use Redirect;
use Alert;
use Validator;
use Input;
use App\Providers\SweetAlertServiceProvider;
class FacilitiesController extends Controller
{
public $restful = true;
public function update_facilities($id){
$facility = Facilities::find($id);
$facility->facility_name = Input::get('facility_name');
$facility->category = Input::get('category');
$facility->save();
Alert::success('Successfully Updated', 'Congratulations');
return view('hotelier/facilities');
}?>
そして、これはview_facilities.blade.phpのための私のVIEWです:
<h2>Hotel Facilities</h2>
<table class="table table-bordered table-hover">
<thead>
<tr>
<th>Facility Name</th>
<th>Category</th>
<th>Actions</th>
</tr>
</thead>
<tbody id="facility_list">
@foreach($facilities as $facility)
<tr id="facility{{$facility->id}}">
<td>{{ $facility->facility_name }}</td>
<td>{{ $facility->category }}</td>
<td><a href="<?php echo 'edit_facilities/'.$facility->id ?>" value="{{$facility->id}}" class="btn btn-info open-modal">Edit</a>
<a id="delete<?php echo $facility->id ?>" href="<?php echo 'delete_facilities/'.$facility->id ?>" class="btn btn-danger" onclick="delete_fac(this)" value="<?php echo $facility->facility_name ?>">Delete</a>
</tr>
@endforeach
</tbody>
</table>
そして、これは私のedit_facilities.blade.phpのVIEWのためであります
<div class="container">
<h2>Edit Hotel Facility</h2>
<div class="col-md-4 form-horizontal">
<form action="/update_facilities/'.$facility->id" method="POST" enctype="multipart/form-data">
<input type="hidden" name="_token" value="{{ csrf_token() }}" />
<label>Facility Name</label>
<input type="text" class="form-control" value="{{ $facility['facility_name'] }}" name="facility_name" id="facility_name" autocomplete="off"></input>
<br />
<label>Category</label>
<input type="text" class="form-control" value="{{ $facility['category'] }}" name="category" id="category" autocomplete="off"></input>
<br />
<button type="submit" class="btn btn-info">Save</button>
</form>
</div>
そして、私のROUTES:
Route::post('/update_facilities/{id}', '[email protected]_facilities');
コードは正しいです。あなたが欲しいもの ? –
@PrashantGPatil @PrashantGPatilそれが正しいようだが、私は "FacilitiesController.php行82: 空の値からデフォルトオブジェクトを作成する"エラーが発生しています.. "$ facility-> facility_name = Input :: get( 'facility_name') ; " – zuma
NULL値にプロパティを使用しようとすると、このエラーが表示されます。したがって、$ facility-> facility_nameがNULLでないかどうかを常に確認する必要があります。 –