taneryeke adlı üyeden alıntı: mesajı görüntüle
Merhaba, laravelde başlangıç düzeyinde bi proje geliştiriyorun öğreniyorum. Bi sorunla karşılaştım. Herşeyi bitirdim ancak bu sorunu çözemedim. Makaleler tablosunda güncelleme yaptığım zaman "1452 Cannot add or update a child row: a foreign key constraint fails " hatası alıyorum.

Migration:
<?php

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

class Articles extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('articles', function (Blueprint $table) {
$table->id();
$table->unsignedBiginteger('category_id');
$table->string('title');
$table->string('image');
$table->longText('content');
$table->integer('hit')->default(0);
$table->string('slug');
$table->string('seotitle');
$table->string('seokeywords');
$table->string('metadescription');
$table->timestamps();
$table->foreign('category_id')
->references('id')
->on('categories')
->onDelete('cascade');

});
}

/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('articles');
}
}
Controllerdaki edit ve update fonksiyonu:

public function edit($id)
{
$article=Article::findOrFail($id);
$categories=Category::all();
return view('back.articles.update',compact('categories','article'));
}

/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
{
$request->validate([
'title'=>'min:3',
'image'=>'image|mimes:jpeg,png,jpg|max:2048'
]);
$article= Article::findOrFail($id);
$article->title=$request->title;
$article->category_id=$request->category;
$article->content=$request->content;
$article->slug=Str::slug($request->title);

if($request->hasFile('image')){
$imageName=Str::slug($request->title).'.'.$request->image->getClientOriginalExtension();
$request->image->move(public_path('uploads'),$imageName);
$article->image='uploads/'.$imageName;
}
$article->save();
toastr()->success('Congratulations!', 'Your article has been successfully updated.');
return redirect()->route('admin.articles.index');

}
2 Haftadır araştırıyorum ancak bir sonuca ulaşamadım. Phpmyadmin üzerinden çözebileceğim bir problem mi? Yardımcı olabilirseniz çok mutlu olurum
Article icin atamaya calistiginiz kategori id, categories tablosunda eklimi?

Eger ogrenmeye yeni basliyorsaniz foreign kullanmayi ertelebiliirsiniz simdilik.