我有类似系统的问题。如果我点击像按钮它会抛出一个错误:
PostController.php第80行中的 FatalErrorException:
类'App \ Http \ Controllers \ Like'未找到
我的帖子控制器中的第80行是:
$like = new Like();
这是我的全部功能:
public function postLikePost(Request $request){
$post_id = $request['postId'];
$is_like = $request['isLike'] === 'true' ? true : false;
$update = false;
$post = Post::find($post_id);
if(!$post){
return null;
}
$user = Auth::user();
$like = $user->likes()->where('post_id', $post_id)->first();
if($like){
$already_like = $like->like;
$update = true;
if($already_like == $is_like){
$like->delete();
return null;
}
} else{
$like = new Like();
}
$like->like = $is_like;
$like->user_id = $user->id;
$like->post_id = $post->id;
if($update){
$like->update();
}else{
$like->save();
}
return null;
}
你知道问题出在哪里吗?谢谢。 (我使用的是Laravel v5.2.39)
答案 0 :(得分:1)
您需要导入它。
将use App\Like;
添加到PostController.php的顶部
(假设它在App命名空间中)
答案 1 :(得分:1)
你需要在课堂陈述之前写use Your_Namespace\Like;
。
在控制器中: -
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use DB;
use App\Like; // use Your_Namespace\Like; add this line here
或者你可以直接写,
$like = new \App\Like(); // new \Your_Namespace\Like();
请参阅documentation。
默认情况下,Your_Namespace
为App
。
您可以通过以下命令更改命名空间: -
php artisan app:name Your_Namespace