Php 完整性约束冲突:1048列';讨论id';不能为空(SQL:insert into`replies`

Php 完整性约束冲突:1048列';讨论id';不能为空(SQL:insert into`replies`,php,laravel,Php,Laravel,我收到此错误SQLSTATE[23000]:完整性约束冲突:1048列“讨论id”不能为空(SQL:insert into回复(内容,讨论id,用户id,更新时间,创建时间)值(asdfghjl,12021-05-09 03:09:052021-05-09:05) 这是我的回复模式 <?php namespace LaravelForum; class Reply extends Model { public function users() { retur

我收到此错误SQLSTATE[23000]:完整性约束冲突:1048列“讨论id”不能为空(SQL:insert into
回复
内容
讨论id
用户id
更新时间
创建时间
)值(asdfghjl,12021-05-09 03:09:052021-05-09:05)

这是我的回复模式

<?php

namespace LaravelForum;



class Reply extends Model
 {
   public function users()
    {
    return $this->belongsTo(User::class,'user_id');
    }

   public function discussion()
    {
   
    return $this->belongsTo(Discussion::class);
    }

 }
  <?php

  namespace LaravelForum;



  class Discussion extends Model
  {
    public function author()
     {
      return $this->belongsTo(User::class,'user_id');
     }

   public function getRouteKeyName()
    {
    return 'slug';
    }




  }

您在插入数据库时错过了讨论Id…这将非常好

如果您从控制器发送insert查询的图像或在那里检查它。

这里是控制器的存储方法:公共函数存储(CreateReplyRequest$request,Discussion$Discussion){auth()->user()->replies()->create(['content'=>$request->content,'discussion\u id'=>$request->id]);使用echo在控制器中记录$request->id是否可用我在laravel是新手我无法了解如何检查特定查询。给我一些说明。在你的存储控制器公共函数存储中(CreateReplyRequest$request,Discussion$Discussion){return dd($request->id)}我认为您应该使用
$Discussion->id
而不是
$request->id
中的
$request->id
  <?php

  namespace LaravelForum;



  class Discussion extends Model
  {
    public function author()
     {
      return $this->belongsTo(User::class,'user_id');
     }

   public function getRouteKeyName()
    {
    return 'slug';
    }




  }
 <?php

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class CreateDiscussionsTable extends Migration
 {
  /**
   * Run the migrations.
   *
   * @return void
   */
   public function up()
    {
         Schema::create('discussions', function (Blueprint $table) {
           $table->bigIncrements('id');
           $table->integer('user_id');
           $table->string('title');
           $table->text('content');
           $table->string('slug');
           $table->integer('channel_id');
           $table->timestamps();
       });
    }

   /**
    * Reverse the migrations.
    *
    * @return void
    */
   public function down()
    {
      Schema::dropIfExists('discussions');
    }
 }