sql - Laravel API Eloquent Where 子句与 Vue 不工作
问题描述
我的问题是,为什么我的 where 子句不起作用?我为我的 vue (with vuex) 项目使用了 Laravel API。
这是控制器功能
public function specific_client(Request $request) {
$id = $request->id;
return JsonResource::collection(
Measurement::where('client_id', '=',$id)
->with(['clients', 'measurement_data'])->get());
}
我也使用 vuetify,这就是我获取 client_id 的方式:
<v-select v-model="cnr" :items="clients" item-text="clientnumber" item-value="id" :hint="cnr" solo></v-select>
我的 store.js :
fetchClientMeasurements({commit}, cnr) {
axios.post("http://localhost:8000/api/clientnr", cnr)
.then(response => {
console.log(response.data.data);
console.log(cnr);
commit("setMeasurements", response.data.data);
});
},
我的 API 路线:
Route::post('clientnr', [MeasurementController::class, 'specific_client']);
当我控制台日志“cnr”时,我得到了正确的 ID,但我没有得到任何数据。如果我在 where 子句中替换 $id,我会得到正确的信息。我觉得这是我在某个地方犯的一个愚蠢的错误,但这就是我来这里的目的。
解决方案
在您的 axios 请求中,您需要标记id
参数。
axios.post("http://localhost:8000/api/clientnr", cnr)
应该
axios.post("http://localhost:8000/api/clientnr", {id: cnr})
推荐阅读
- java - Java没有给出输出,两个整数之间的总和
- javascript - Google Embed Api 显示白盒 Ubuntu 18.04
- javascript - 这是从另一个函数中的函数更新 React 组件状态的好习惯吗?
- sql-server - 使用 SSIS 将每个表的数据从服务器 A 动态复制到服务器 B
- c++ - 从文本文件中读取并制作字典文本文件
- angular - Angular路由器导航到父节点
- javascript - Ext JS 项目配置
- sql - PostgreSQL 中不同隔离级别的性能后果是什么?
- python - 如何将 API 中的数据保存到字典中
- ruby-on-rails - 错误未初始化常量 ActiveSupport::EventedFileUpdateChecker