为了账号安全,请及时绑定邮箱和手机立即绑定

laravel 雄辩地没有保存表格中的所有模型参数

laravel 雄辩地没有保存表格中的所有模型参数

PHP
噜噜哒 2022-08-19 10:12:28
型:protected $table = 'citas_odontologicas';protected $fillable = ['fecha','hora', 'procedimiento_id', 'paciente_id'];迁移:public function up(){    Schema::create('citas_odontologicas', function (Blueprint $table) {        $table->bigIncrements('id');        $table->timestamps();        $table->string('fecha');        $table->string('hora');        $table->bigInteger('procedimiento_id')->unsigned();        $table->foreign('procedimiento_id')->references('id')->on('procedimientos');        $table->bigInteger('paciente_id')->unsigned();        $table->foreign('paciente_id')->references('id')->on('pacientes');    });}控制器:public function agendarCita($fecha, $hora, $procedimiento, $paciente){    $citaOdontologica = new CitaOdontologica($fecha, $hora, $procedimiento, $paciente);    $citaOdontologica->save();    dd($citaOdontologica);}错误:Illuminate\Database\QueryException SQLSTATE[HY000]: 常规错误: 1364 字段 'fecha' 没有默认值 (SQL: 插入到 (, ) 值 (2020-01-25 20:01:22, 2020-01-25 20:01:22))citas_odontologicasupdated_atcreated_at
查看完整描述

1 回答

?
慕田峪4524236

TA贡献1875条经验 获得超5个赞

Laravel Model提供了用于创建对象的静态API。如果要使用表示法,则必须重写模型构造函数。请记住关系字段的后缀(如果您没有更改它)。new ClassName()_id


但我建议使用和方法,像这样:Model::create()Model::make()


$citaOdontologica = CitaOdontologica::make([

  'fecha' => $fecha, 

  'hora' => $hora, 

  'procedimiento_id' => $procedimiento, 

  'paciente_id' => $paciente

]);

$citaOdontologica->save();

甚至更简单:


$citaOdontologica = CitaOdontologica::create([

  'fecha' => $fecha, 

  'hora' => $hora, 

  'procedimiento_id' => $procedimiento, 

  'paciente_id' => $paciente

]);


查看完整回答
反对 回复 2022-08-19
  • 1 回答
  • 0 关注
  • 85 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信