php - Laravel 按值从 api 获取数据
问题描述
我正在使用 Laravel/Passport 并且已经可以通过以下方式获取数据id
:
api.php/Controller.php
Route::get('members/{member}', 'MemberController@show');
public function show(Member $member)
{
return $member;
}
这只是返回所有数据id
,现在我想通过电话号码获取成员,所以我创建了:
Route::get('members/{phone}', 'MemberController@phone');
public function phone(Member $member)
{
return $member;
}
错误:
异常:“Symfony\Component\HttpKernel\Exception\NotFoundHttpException”文件:“C:\Users\xx\xx\xx\xx\vendor\laravel\framework\src\Illuminate\Foundation\Exceptions\Handler.php”行:204消息:“模型 [App\Member] 2929292222 没有查询结果”
解决方案
路线
Route::get('members/{phone}', 'MemberController@phone');
控制器
public function phone(Member $member)
{
return $member;
}
转到Member.php
model
并添加此方法getRouteKeyName
public function getRouteKeyName()
{
return 'phone';
}
Laravel 默认会自动注入 ID 与请求 URI 中相应值匹配的模型实例。
如果您希望模型绑定使用数据库列而不是id
在检索给定模型类时,您可以覆盖getRouteKeyName
Eloquent 模型上的方法:
有关更多信息,请查看文档
推荐阅读
- java - FlatFileItemReader 制表符分隔符不起作用
- html - 使用引导程序在图像上放置带有文本的框
- c# - 尝试自动填写表单,但无法使用 GeckoFX
- python - 检查最长的连续序列,其中前一个数字是当前数字的除数
- bootstrap-4 - 在移动设备上自动调整内容大小(引导程序)
- bash - 使用 wget 下载一个只有部分链接的 html 页面
- c# - 无法通过 Swagger 下载文档
- conditional-formatting - excel条件格式| 边际回报的可视化
- python-3.x - stats.linregress 中的 r 与 statsmodels 中的 r-squared 相比
- sql - 如何计算两个日期之间的营业时间/分钟?