首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >完整性约束冲突: 1048列'discussion_id‘不能为null (SQL: insert insert be’`replies`‘)

完整性约束冲突: 1048列'discussion_id‘不能为null (SQL: insert insert be’`replies`‘)
EN

Stack Overflow用户
提问于 2021-05-09 03:23:31
回答 1查看 1.3K关注 0票数 0

我得到这个错误SQLSTATE23000:完整性约束违反: 1048列'discussion_id‘不能为null (SQL: insert insert replies (contentdiscussion_iduser_idupdated_atcreated_at)值)值(asdfghjl,?,1,2021-05-09 :09:05,2021-05-09 :09:05)。

这是我的回复模型

代码语言:javascript
复制
<?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);
    }

 }

答复表

代码语言:javascript
复制
   <?php

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

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

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

讨论模型

代码语言:javascript
复制
  <?php

  namespace LaravelForum;



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

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




  }

讨论表

代码语言:javascript
复制
 <?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');
    }
 }
EN

回答 1

Stack Overflow用户

发布于 2021-05-09 03:28:29

您在插入数据库时错过了讨论Id .如果您从控制器发送insert查询的图像或检查它,这将是很棒的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67454040

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档