【问题标题】:Update Function and nWidart Module更新函数和 nWidart 模块
【发布时间】:2021-09-28 22:08:37
【问题描述】:

Laravel 的 nwidart 模块...没有这个模块它可以正常工作..但我不能在 nwidart/modules 中使用“更新功能”..

我的路线:

Route::put('customer-update/{id}', [CustomerController::class, 'update'])->name('customer-update');

Route::resource('customer',CustomerController::class);

我的观点:

<form  action="{{ route('customer.update', $customer->id) }}" method="POST" id="account-edit" name="account-edit">
            @csrf
            @method('PUT')
....
</form>

错误:

目标类 [Modules\Customer\Http\Controllers\Modules\Customer\Http\Controllers\CustomerController] 不存在。

我的所有更新功能都有这个问题,它可以在没有模块的情况下工作

【问题讨论】:

  • 这个错误似乎是一个命名空间之一,你能分享你的 CustomerController.php 和 Modules.php 吗?一个@Modules\Customer\Http\Controllers\Modules
  • 基本上,在Modules\Customer\Http\Controllers\Modules.php 中,您使用了没有前导\ use 的classCustomer\Http\Controllers\CustomerController
  • 错误发生在哪里?错误 backstack 中报告了哪个文件?如果您不为您的问题添加更多详细信息,我们将无法为您提供帮助。
  • 你明白这是一个命名空间问题吗?检查你在哪里使用了 CustomerController::class 类(在模块的配置中,在任何声明中)并修复命名空间。
  • 那么,为了让它工作,你必须注释掉模块命名空间?如本期报告中所示github.com/nWidart/laravel-modules/issues/1245

标签: laravel module


【解决方案1】:

请为所有控制器使用路由文件中的命名空间

例如:

use Modules\Customer\Http\Controllers\CustomerController;

【讨论】:

  • 我试试这个...用 \Modules\Customer 和 Modules\Customer (注意第一个)
猜你喜欢
  • 2021-10-21
  • 2020-07-14
  • 1970-01-01
  • 2021-11-10
  • 2019-06-13
  • 2011-10-20
  • 2018-06-09
  • 2014-03-26
  • 1970-01-01
相关资源
最近更新 更多