You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Laravel查询中添加and条件,避免插入相同libelle与对应id的重复数据

实现方案

你只需要在原有查询链式追加where条件即可,Laravel 查询构造器连续调用where方法默认采用 AND 逻辑拼接,刚好符合你的需求。

修改后的完整代码如下:

public function addPost(Request $request, $id)
{
    if (L_Examen_Objectif::where('libelle', '=', $request->input('libelle'))
        // 追加id匹配条件,此处根据你的业务需求对应调整匹配的字段和值即可
        ->where('id_lexamen', '=', $id)
        ->exists()) {
        return  'true';
    } else {
        $Examen_data = array(
            'libelle' => $request->input('libelle'),
            'id_examen' => $request->input('id_examen'),
            'id_lexamen' => $id,
        );
        L_Examen_Objectif::insert($Examen_data);    
    }
}

补充说明:

  • 如果你的业务是要匹配libelle和请求传入的id_examen同时重复,把第二个where条件替换为->where('id_examen', '=', $request->input('id_examen'))即可。
  • 建议额外给数据库对应表添加libelle和对应id字段的联合唯一索引,即使代码校验出现疏漏,数据库层面也会阻止重复数据插入,安全性更高。

内容的提问来源于stack exchange,提问作者drnwork

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 06:06:06