icerikKaydet() yöntemi bir kere gereksiz, yaptığı özel bir işlem yok.
return 1 ile her zaman true döner, zaten save de true dönüyor.
icerik_ekle içerisindeki try...catch... bir işe yaramıyor. $icerik->icerikKaydet($data); kısmını kapsasa da farketmez.
return view('icerik.index.') yanlış yazılmış, sonda bir nokta var ve ayrıca ekrana bu şekilde işlem sonrası şablon basmak yerine redirect kullanmak daha doğru olur.
Son olarak icerik_ekle şeklinde snake_case isimler kullanmak yerine icerikEkle şeklide camelCase tercih etmelisiniz. Laravel PSR standartlarını takip ettiği için siz de takip ederseniz iyi olur.
Yapacağınız şu:
public function icerikEkle(Request $request)
{
$data = $request->validate([
'baslik' => 'required',
'icerik' => 'required',
]);
Icerik::create($data);
Alert::success('Başarılı', 'İçerik Eklendi')->autoClose(5000);
return redirect()->route('icerik.index');
}
Eğer bir tane IcerikEkleRequest şeklinde bir FormRequest oluşturursanız:
app/Http/Requests/IcerikEkleRequest.php
<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class IcerikEkleRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'baslik' => 'required',
'icerik' => 'required',
];
}
}
Şöyle yaparsınız:
public function icerikEkle(IcerikEkleRequest $request)
{
Icerik::create($request->validated());
Alert::success('Başarılı', 'İçerik Eklendi')->autoClose(5000);
return redirect()->route('icerik.index');
}