我在使用Laravel 5.2时遇到了一个小问题
我正在尝试检索经过身份验证的用户 ID,但由于某种原因无法正常工作。每次我的数据库中有 0 而不是有效的用户 ID 时......
在我的控制器中,我有使用身份验证,包括在顶部。
我的存储方法如下所示:
public function store(StoreClassifiedRequest $request)
{
$title = $request->input('title');
$category_id = $request->input('category_id');
$description = $request->input('description');
$price = $request->input('price');
$condition = $request->input('condition');
$main_image = $request->file('main_image');
$location = $request->input('location');
$email = $request->input('email');
$phone = $request->input('phone');
$owner_id = Auth::user()->id;
....
// Create command
$command = new StoreClassifiedCommand($title, $category_id, $description, $main_image_filename, $price, $condition, $location, $email, $phone, $owner_id);
$this->dispatch($command);
return 'Redirect::route('classifieds.index')->with('message', 'Listing Created');
}
一切似乎都很好,只是插入后由于某种原因 id 始终为 0。我在 Auth::user()->id 上做了一个var_dump,我得到了 int(2)
我将非常感谢任何建议...
StoreClassifiedCommand.php :
<?php
namespace App'Commands;
use App'Commands'Command;
use Illuminate'Contracts'Bus'SelfHandling;
use App'Classified;
class StoreClassifiedCommand extends Command implements SelfHandling {
public $title;
public $category_id;
public $description;
public $main_image;
public $price;
public $condition;
public $location;
public $email;
public $phone;
public $owner_id;
// Create a new command instance
public function __construct($title, $category_id, $description, $main_image, $price, $condition, $location, $email, $phone, $owner_id)
{
$this->title = $title;
$this->category_id = $category_id;
$this->description = $description;
$this->main_image = $main_image;
$this->price = $price;
$this->condition = $condition;
$this->location = $location;
$this->email = $email;
$this->phone = $phone;
$this->owner_id = $owner_id;
}
//Execute the command.
public function handle()
{
return Classified::create([
'title' => $this->title,
'category_id' => $this->category_id,
'description' => $this->description,
'main_image' => $this->main_image,
'price' => $this->price,
'condition' => $this->condition,
'location' => $this->location,
'email' => $this->email,
'phone' =>$this->phone,
'owner_id' =>$this->owner_id,
]);
}
}
试试
$request->user()->id;
我不熟悉您提供的代码,但这是一个猜测。
也使用这些。
use Illuminate'Http'Request;
use App'Http'Requests;
为了使用请求对象。
对不起,如果我在这里离球很远。
多亏了@lagbox,问题已经解决了。
我还没有在我的模型中将 $owner_id 设置为易错的。我认为这个话题已经结束了。