Я хочу показать какой-нибудь пост, когда новый пользователь зарегистрирует аккаунт.Для этого я создаю корзину из админ-панели, но она не получает идентификатор пользователя.Я получаю идентификатор пользователя Auth и передаю его для просмотра, но он показывает мне ошибку.Я не знаю, где я не прав.Пожалуйста, помогите мне решить эту проблему.Вот мой код контроллера и просмотра.
<?php
namespace App\Http\Controllers\Web;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\Http\Requests\Web\CreateBucket;
use App\Bucket;
use App\User;
use Auth;
class BucketController extends Controller
{
public function index(Request $request)
{
$buckets = Bucket::orderBy('id','ASC')->paginate(10);
return view('buckets.index',compact('buckets',$buckets))
->with('i',($request->input('page',1) - 1) * 10);
}
public function create()
{
// $id = Auth::user()->id;
// dd($id);
return view('buckets.create');
}
public function store(CreateBucket $request)
{
$id = Auth::user()->id;
if($request->hasFile('bucket_image')) {
$bucket_image = $request->file('bucket_image');
$bucket_image_name = time().'.'.$bucket_image->getClientOriginalExtension();
$path = public_path('Storage/BucketImages');
$bucket_image->move($path, $bucket_image_name);
$bucket_image = 'Storage/BucketImages/'.$bucket_image_name;
} else {
$bucket_image = NULL;
}
$bucket = Bucket::create([
'bucket_name' => $request->input('bucket_name'),
'user_id' => $request->input('user_id'),
'bucket_image'=> $bucket_image,
'bucket_type' => $request->input('bucket_type'),
]);
// dd($bucket);
return redirect()->route('buckets.index')
->with('success','Bucket created successfully');
}
А вот Create.blade.php:
<section class="content">
<div class="col-md-10 col-md-offset-2">
<h4>Create New Bucket</h4>
<div class="panel-body">
@if (count($errors) > 0)
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
{!!Form::open(['route' => 'buckets.store','method'=>'POST','class'=>'form-horizontal', 'files' => true])!!}
<div class="form-group">
{!!Form::label('bucket_name','Bucket Name*:',['class'=>'col-md-2'])!!}
<div class="col-md-10">
{!!Form::text('bucket_name', null, ['class'=>'form-control','required'])!!}
</div>
</div>
<div class="form-group">
{!!Form::label('user_id','User Id*:',['class'=>'col-md-2'])!!}
<div class="col-md-10">
{!!Form::text('user_id', (Auth::user()->id), ['class'=>'form-control','required'])!!}
</div>
</div>
<div class="form-group">
{!!Form::label('bucket_image','Bucket Image*:',['class'=>'col-md-2'])!!}
<div class="col-md-10">
{!!Form::file('bucket_image', null, ['class'=>'form-control','required'])!!}
</div>
</div>
<div class="form-group">
{!!Form::label('bucket_type','Bucket Type*:',['class'=>'col-md-2'])!!}
<div class="col-md-10">
{!!Form::text('bucket_type', null, ['class'=>'form-control','required'])!!}
</div>
</div>
<div class="form-group">
<div class="col-md-offset-2" style="padding-left: 14px">
<input type="submit" name="submit" value="Create" class="btn btn-success">
</div>
</div>
{!!Form::close()!!}
вот модель Bucket:
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;
class Bucket extends Model
{
use SoftDeletes;
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable = [
'bucket_name', 'bucket_type', 'bucket_image',
];
/**
* The attributes that should be mutated to dates.
*
* @var array
*/
protected $dates = ['deleted_at'];
/**
* The relations to eager load on every query.
*
* @var array
*/
protected $with = [
'user'
];
/**
* Get the user that owns the bucket.
*
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
*/
public function user()
{
return $this->belongsTo(User::class);
}
/**
* Get all the posts for the bucket.
*
* @return \Illuminate\Database\Eloquent\Relations\HasMany
*/
public function posts()
{
return $this->hasMany(Post::class)->latest();
}
}