php - Laravel 存储到数据库中(错误空值)
问题描述
我想获取咨询 id 并将其输入到 drug_prescription 表中。我已经用 echo 测试了 $consultation_id 变量,其中有一个正确的值。但我无法将该变量输入到 drug_prescription 表中。
下面是控制器的代码:
public function store(Request $request)
{
$this->validate($request,[
'client_id' => 'required',
'staff_id' => 'required',
'diagnosis' => 'required',
]);
//Create Post
$consultation = new consultation;
$consultation->client_id = $request->input('client_id');
$consultation->staff_id = $request->input('staff_id');
$consultation->client_complaints = $request->input('client_complaints');
$consultation->observations = $request->input('observations');
$consultation->physical_abnormalities = $request->input('physical_abnormalities');
$consultation->diagnosis = $request->input('diagnosis');
$consultation->remarks = $request->input('remarks');
$consultation->save();
$client_id = $request->client_id;
$consultation = DB::table('consultations')
->where('client_id', '=', $client_id)
->orderBy('created_at', 'desc')
->take(1)
->get();
// var_dump($consultation);
$client_id = $request->client_id;
$consultation_id = $consultation[0]->id;
$count = $request->count;
for($i=0;$i<$count;$i++){
$quantity = 'quantity' . $i;
$quantityStatus = $request->$quantity;
if($quantityStatus!=NULL){
$drug_prescription = new drug_prescription;
$drug_prescription->client_id = $request->input('client_id');
$drug_prescription->drug_id = $request->input('drug' . $i);
$drug_prescription->consultation_id = $request->input($consultation_id) ;
$drug_prescription->amount_perday = $request->input('amount_perday' . $i);
$drug_prescription->amount_ofday = $request->input('amount_ofday' . $i);
$drug_prescription->quantity = $request->input('quantity'. $i);
$drug_prescription->price = $request->input('price'. $i);
$drug_prescription->save();
}
}
// return redirect('/appointment')->with('success', 'Consultation Infomation Added');
// dd($request->all());
}
解决方案
$drug_prescription->consultation_id = $request->input($consultation_id) ;
应该
$drug_prescription->consultation_id = $consultation_id;
因为它的值不是来自request
' 的输入,而是来自你的代码。
推荐阅读
- sql - 为什么带有 LIMIT 的横向连接会增加执行时间?
- c# - 什么是 ApiController 属性适合精确(尤其是在开发之外)?
- javascript - Facebook 的 JS SDK 停止在控制台中处理此错误
- sql - 为什么 PostgreSQL 不使用无符号整数作为 ID?那不会提供两倍的可能记录吗?
- ruby-on-rails - 如何在 ActiveAdmin 的仪表板中使用参数?
- neo4j - 设置关系属性时奇怪的 Neo4J Cypher 行为
- visual-studio-code - 上下移动时停止线移动(Visual Studio Code)
- delphi - 快速更新数组更少的行
- sml - 如何在两个整数范围内进行嵌套 for 循环?
- npm - vscode中的npm版本与安装版本不同