我试图将我的posts.delete链接到我的index.blade.php,但我一直得到Symfony\Component\Routing\Exc0019\RouteNotFoundExcema
指数刀身php
@extends('layouts.app')
@section('content')
<div class="flex justify-center">
<div class="w-8/12 bg-white p-6 rounded-lg">
<form action="{{ route('posts') }}" method="post" class="mb-4">
@csrf
<div class="mb-4">
<label for="body" class="sr-only">Body</label>
<textarea name="body" id="body" cols="30" rows="4" class="by-gray-100 border-2
w-full p-4 rounded lg @error('body') border-red-500 @enderror" placeholder="Post something!"></textarea>
@error('body')
<div class="text-red-500 mt-3 text-sm">
{{$message}}
</div>
@enderror
</div>
<div>
<button type="submit" class="bg-blue-500 text-white px-4 py-2 rounded
font-medium">Post</button>
</div>
</form>
@if ($posts->count())
@foreach ($posts as $post)
<div class="mb-4">
<a href="" class="font-bold">{{ $post->user->username }}</a>
<span class="text-gray-600 text-sm">{{ $post->created_at->diffForHumans() }}</span>
<p class="mb-2">{{ $post->body }}</p>
<div class="flex items-center">
@if (!$post->likedBy(auth()->user()))
<form action="{{ route('posts.likes', $post) }}" method="post" class="mr-1">
@csrf
<button type="submit" class="text-blue-500">Like</button>
</form>
@else
<form action="{{ route('posts.destroy', $post) }}" method="delete" class="mr-1">
@csrf
@method('DELETE')
<button type="submit" class="text-blue-500">Unlike</button>
</form>
@endif
<span>{{ $post->likes->count() }} {{ Str::plural('likes', $post->likes->count()) }}</span>
</div>
</div>
@endforeach
{{ $posts->links() }}
@else
There are no posts...
@endif
</div>
</div>
@endsection
PostLikeController
<?php
namespace App\Http\Controllers;
use App\Models\Post;
use Illuminate\Http\Request;
class PostLikeController extends Controller
{
public function __construct()
{
$this->middleware(['auth']);
}
public function store(Post $post, Request $request)
//While trying to add $request here it gave back an Undefined variable '$request'.
//But after adding Request $request to it, it worked...
{
if ($post->likedBy($request->user())){
return response(null, 409);
}
$post->likes()->create([
'user_id' => $request->user()->id,
]);
return back();
}
public function destroy(Post $post, Request $request)
{
dd($post);
}
}
web.php
<?php
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\PostController;
use App\Http\Controllers\PostLikeController;
use App\Http\Controllers\DashboardController;
use App\Http\Controllers\Auth\LoginController;
use App\Http\Controllers\Auth\LogoutController;
use App\Http\Controllers\Auth\RegisterController;
/*
|--------------------------------------------------------------------------
| 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('welcome');
});
// Route::get('/', function () {
// return view('posts.index');
// });
Route::get('/', function () {
return view('home');
})->name('home');
Route::get('/dashboard', [DashboardController::class, 'index'] )
->name('dashboard')
->middleware('auth');
Route::get('/register', [RegisterController::class, 'index'] )->name('register');
Route::post('/register', [RegisterController::class, 'store'] );
Route::get('/login', [LoginController::class, 'index'] )->name('login');
Route::post('/login', [LoginController::class, 'store'] );
Route::post('/logout', [LogoutController::class, 'store'] )->name('logout');
Route::get('/login', [LoginController::class, 'index'] )->name('login');
Route::get('/posts', [PostController::class, 'index'] )->name('posts');
Route::post('/posts', [PostController::class, 'store'] );
Route::post('/posts/{post}/likes', [PostLikeController::class, 'store'] )->name('posts.likes');
Route::delete('/posts/{post}/likes', [PostLikeController::class, 'destroy'])->name('posts.likes');
喜欢php
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Like extends Model
{
use HasFactory;
protected $fillable = [
'user_id'
];
}
我检查了我的路线:列表,我发现它在那里
---------------------------------------------------------------------------------------域名方法URI名称动作中间件---------------------------------------------------------------------------------------------------------获取头部/主页闭包|| GET | HEAD | api/user | | Closure
api | | | | | | | | auth:api | | | HEAD | dashboard | dashboard | App Http\Controllers\DashboardController@index| web | | | | | | | | | | | | | | | | | | | | | | | |获取|头部|登录124\LoginController@index| web | | | | | | | | | | | | | | | | | | | | |来宾| | | |发布\LoginController@store| web | | | | | | | | | | | | | | | | | | | | | | | | | | |\LogoutController@store|网络| | | | |获取|头部|帖子|帖子|应用程序\Http\controller\PostController@index| web | | | | | POST | | | App\Http\Controller\PostController@store| web | | | POST | posts/{POST}/喜欢| posts。喜欢| App\Http\Controllers\PostLikeController@store|网络| | | | | | | | | | | | | | | | | | | | |删除|帖子/{post}/喜欢|。喜欢| App\Http\Controllers\PostLikeController@destroy| web | | | | | | | | | | | | | | | | | | | | | | | | | | | |\RegisterController@index| web |
| | | | | | | | |来宾|
| | |发布|注册| |应用程序\Http\Controllers\Auth\RegisterController@store| web |
| | | | | | | | |来宾------------
注:我试图让它摧毁已经创建的喜欢,但它一直给Symfony\Component\Routing\Exc0019\RouteNotFoundExcema路由[posts.destroy]未定义。(视图:C:\xampp\htdocs\posty\资源\视图\帖子\index.blade.php)
你的帖子像store
和销毁
具有相同的名称,你没有注册一个路由名称posts.destroy
或posts.delete
。将路线上的名称更新为正确的名称。
Route::delete('/posts/{post}/likes', [PostLikeController::class, 'destroy'])->name('posts.destroy');
考虑以下事项: 我有一个应用模板,一个HeaderTemboard,和参数化的路由集与相同的处理程序(在应用模板)。我希望在没有找到东西的时候能够服务404路线。例如, /CA/SanFrancisco应该由区域查找和处理,而 /SanFranciscoz应该是404。 下面是我如何快速测试路线的。 问题是 /SanFranciscoz总是由区域页面处理,但我希望它是404。此外,如果我向第一个路
我使用的是Laravel 5.6,出现了一个错误: 哎呀,看起来出了什么问题。(1/1) 方法不允许 下面是我的视图(leads/show.blade.php): Ajax请求和响应: 路线是: 请帮我找一下错误。
我正在建立一个注册页,当我提交时,我得到一个404没有找到。我正在使用react和express,我认为前端是好的。我缺少了一些后端,或者我的post请求的url错误:AXIOS.post('http://localhost:3000/auth'。如果有人能看到我的错误之处,我将不胜感激。 这是我的路由的registerPost函数。 这些是路线。
我有一个更新网站的任务。本网站使用Symfony2。我试着在我的localhost上模拟网站。 当我尝试使用空方向路径(REQUEST_URI)到达索引页时,Symfony2返回的路由。我尝试运行的url是。 当我使用(例如)时,它也不起作用 怎么了? app/config/routing。yml: app/配置/routing_dev.yml: src/AppBundle/Resources/c
我对这个问题做了一些研究,但仍然无法解决。我还在这里搜索了堆栈溢出的其他方法,但到目前为止还没有成功。我试过不带样例,把它移到另一个文件夹,没有效果。结构如下: 主要Java代码 controller.java代码 我跟随本教程学习更多关于JavaFX和XML的知识。
可能重复: 良好的scalaz介绍 我想了解更多关于Scalaz的知识,一旦Scalaz7被宣布稳定,我可能会使用它来避免重新连接我的大脑。我的问题是Scalaz包含了很多功能。虽然它的大部分是独立于其他部分的,但我想鸟瞰一下Scalaz提供的全局功能以及它是如何组织的。据我所知,Scalaz提供了很多东西, 、和特征, 新的monads,例如(编辑:原来它只是一个应用程序) 单声道变压器(,..