为啥我的路由在调用破坏函数后会失败?

Posted

技术标签:

【中文标题】为啥我的路由在调用破坏函数后会失败?【英文标题】:Why do my routes fail after calling a destroy function?为什么我的路由在调用破坏函数后会失败? 【发布时间】:2021-12-22 13:41:04 【问题描述】:

这段代码已经进行了几次迭代,但我只会展示迄今为止效果最好的代码(没有错误)。

销毁函数:

public function destroy($locale, $id)

    Component::where('id', $id)->delete();

    $locale = App::getLocale();

    return route('components.index', compact('locale'));

索引函数(参考上面):

public function index($locale)

    parent::lang($locale);

    $components = Component::paginate(10);

    return view('production/index-component', compact('components'));

相关路线:

Route::group(['prefix' => 'locale'], function() 
    Route::resource('/components', ComponentController::class);
);

Resulting URL

否则,销毁功能会起作用,记录将被删除(在转到正确的 URL 时)。理想情况下,这应该只是将用户重定向回 locale/components。

提前谢谢你!

【问题讨论】:

Welcome to SO ...您将 URL 作为字符串返回,而不是重定向响应 ...查看文档以返回重定向 laravel.com/docs/8.x/responses#redirecting-named-routes 哇,谢谢!我很尴尬地说这已经困扰了我多久了。 【参考方案1】:

归功于 lagbox,

public function destroy($locale, $id)


    Component::where('id', $id)->delete();

    $locale = App::getLocale();

    return redirect()->route('components.index', ['locale' => $locale]);

效果很好。

【讨论】:

以上是关于为啥我的路由在调用破坏函数后会失败?的主要内容,如果未能解决你的问题,请参考以下文章

为啥我进入路由器网页后会一直自动刷新?

为啥我的 Vue 路由器会抛出最大调用堆栈错误?

为啥没有调用我的 ember.js 路由模型?

TP-link无线路由器的问题 为啥总是显示关联连接失败!

为啥我的添加好友测试路由在 insomina 中通过了 200 OK,但是当我调用获取所有用户时它没有嵌套?

Angularjs:为啥页面刷新会破坏 $rootScope 的值?