Hide a Vue button with a gate
Share the gate as a boolean. The controller still calls authorize on the POST.
Share the gate as a boolean. The controller still calls authorize on the POST.
authorize() in the controller is the check. The Vue button can hide itself later.
data() becomes ref. Methods become functions. An Inertia page still receives props. It does not gain Vue Router.
withDefaults fills a prop that is missing. A prop that arrives as null stays null.
A persistent layout does not receive the page props as its own props. usePage() does.
back() returns to the page that posted. to_route() is the right call when the next page is a specific list.
prefetch on a Link loads a GET page before the click. Do not prefetch a POST, a logout, or a page the user cannot open.
HandleInertiaRequests::share() runs for every Inertia response. Keep the query cheap and leave secrets out.
Email a signed URL and store only a hash of the token. Do not email a temporary password.
Update the signed-in user from the kit's profile page. Ignore their id on the unique email rule.
routes/api.php is already under /api. Add v1 inside the file and keep Inertia pages out of it.
Socialite starts with a top-level redirect. A Vue popup loses the session cookie on the way back.
Newsletter
One short email with new guides, release notes worth reading and hand-picked community links. No spam, unsubscribe any time.