Laravel: пытается сделать три функции обновления в одном контроллере - PullRequest
0 голосов
/ 09 мая 2018

Я пытаюсь сделать три разные функции обновления в CompanyAdressController: defaultUpdate, contactUpdate и generalUpdate.

В первом случае я пытаюсь получить к ним доступ через API:

из моего приложения js:

this.$http.put('http://127.0.0.1:8000/api/companyDefault/' + this.hospital.default.id, this.hospital.default)

и внутри API-маршрутов:

Route::resource('/companyDefault', 'CompanyAddressController@defaultUpdate');

и в CompanyAddressController:

public function defaultUpdate(Request $request, CompanyAddress $companyAddress)
{
...
}

У меня ошибка:

"message": "Method [defaultUpdate@update] does not exist on [App\\Http\\Controllers\\CompanyAddressController].",
    "exception": "BadMethodCallException",

Как мне исправить мои маршруты, чтобы получить доступ к моему методу? Или я должен сделать это по-другому, создав одну controller update функцию с параметрами из моей функции API?

1 Ответ

0 голосов
/ 09 мая 2018

Вы используете документацию проверки ресурсовного контроллера: https://laravel.com/docs/5.6/controllers#resource-controllers. Правильный синтаксис для регистрации ресурсного контроллера:

Route::resource('companyDefault', 'CompanyAddressController');

Я думаю, это то, что вы хотите:

Route::put('/companyDefault', 'CompanyAddressController@defaultUpdate');
Route::put('/contactUpdate', 'CompanyAddressController@contactUpdate');
Route::put('/generalUpdate', 'CompanyAddressController@generalUpdate');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...