簡體   English   中英

使用Load()Laravel 5.5從所有表中刪除數據

[英]Delete Data From all tables using Load() Laravel 5.5

我正在嘗試從模型表中刪除模型,並從注釋表中刪除其所有注釋...我當前的代碼刪除模型,但不刪除其他表中的注釋...

這是我的破壞功能

public function destroy(Request $request,CadModel $cadmodel)
    {
        $cadmodel->load('comments')->delete();
        $request->session()->flash('message.level', 'success');
        $request->session()->flash('message.content', 'File Deleted Successfully!');
        return redirect()->route('dashboard');
    }

這是我在CadModel Laravel模型中定義的關系...

 public function comments()
    {
        return $this->hasMany(Comment::class);
    }

請回復並建議我刪除..Model及其注釋的解決方案

在遷移中,如果使用onDelete('cascade')刪除了模型,則設置要刪除的相關注釋。

例:

/**
    * Run the migrations.
    *
    * @return void
    */
    public function up()
    {
        Schema::create('comments_model', function(Blueprint $table)
        {
            $table->increments('id');
            $table->integer('comment_id')->unsigned();
            $table->integer('model_id')->unsigned();

            $table->foreign('comment_id')->references('id')->on('comments')->onDelete('cascade');
            $table->foreign('model_id')->references('id')->on('models')->onDelete('cascade');
        });
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM