'How to pass route param while using Inertia manual visit
How can I pass the route param while using Inertia manual visit, for example:
Route:
Route::post('/explore/gallery/like/{$post}', [ExploreController::class, 'likeToggle'])
->name('explore.post.like');
Component:
Inertia.visit(route('explore.post.like'),
{
method: 'post',
preserveScroll: true,
data: {
$post: this.id
},
},
);
but is shows the error tho,
Solution 1:[1]
A simple solution would be:
Inertia.post(route('explore.post.like', [this.id, 'if you have other params']), {}, {
preserveScroll: true,
});
Pls make sure the order is correct, follow the order of your route's param
Solution 2:[2]
Error occur in Ziggy, and says you need pass $post,
Ok, Change route('explore.post.like') to route('explore.post.like', this.id)
According Ziggy documentation you can also use like :
route('explore.post.like', this.id)
route('explore.post.like', [this.id])
route('explore.post.like', { $post: this.id })
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | |
| Solution 2 | Mahdi |

