Laravel中如何为all()函数添加字段排除项?
如何在Laravel中排除Request的部分字段创建模型
方法1:用except()排除不需要的字段
Request对象自带的except()方法可以直接过滤掉指定字段,返回剩余的字段数组,刚好满足你的需求:
// 排除field1、field2这两个不需要的字段 $validData = $request->except(['field1', 'field2']); Etudiant::create($validData);
方法2:用only()指定允许的字段(更推荐)
如果明确知道Etudiant表需要哪些字段,直接用only()指定更安全,也契合Laravel模型$fillable的白名单设计:
// 只保留name、age、email这几个Etudiant表需要的字段 $validData = $request->only(['name', 'age', 'email']); Etudiant::create($validData);
方法3:拆分数据存入两张表
如果剩余字段要存入另一张关联表,可以一次性拆分处理:
// 创建Etudiant记录 $etudiant = Etudiant::create($request->only(['name', 'age'])); // 用剩下的字段创建关联表记录(假设Etudiant和目标表是一对多关系) $etudiant->targetTable()->create($request->only(['extra_field1', 'extra_field2']));
内容的提问来源于stack exchange,提问作者Mario586
相关产品推荐
相关产品推荐

