From 0b4dd1301ea124191281c9a4959b68bda6fd0f5a Mon Sep 17 00:00:00 2001 From: Ketan Kulkarni Date: Thu, 7 Dec 2023 16:11:05 +0530 Subject: [PATCH] added unique on label and parent_id --- app/Http/Controllers/TaxonomyController.php | 14 ++++++-- ..._12_07_102246_unique-taxo-label-parent.php | 32 +++++++++++++++++++ 2 files changed, 43 insertions(+), 3 deletions(-) create mode 100644 database/migrations/2023_12_07_102246_unique-taxo-label-parent.php diff --git a/app/Http/Controllers/TaxonomyController.php b/app/Http/Controllers/TaxonomyController.php index eb33ed52..ddcef958 100644 --- a/app/Http/Controllers/TaxonomyController.php +++ b/app/Http/Controllers/TaxonomyController.php @@ -39,12 +39,16 @@ public function add($id) public function addstore(TaxonomyRequest $request, $id) { + try{ $taxonomy_new = new Taxonomy(); $taxonomy_new ->label = $request->label; $taxonomy_new->parent_id = $id; $taxonomy_new ->save(); - - Session::flash('alert-success', 'Taxonomy successfully added.'); + Session::flash('alert-success', 'Taxonomy successfully added.'); + } + catch(\Exception $e){ + Session::flash('alert-error', $e->getMessage()); + } return redirect()->route('taxonomies.index'); } @@ -57,12 +61,16 @@ public function edit($id) public function update(TaxonomyRequest $request, $id) { + try{ $taxonomies = Taxonomy::find($id); $taxonomies ->parent_id = $request->parent_id; $taxonomies ->label = $request->label; $taxonomies ->save(); - Session::flash('alert-success', 'Taxonomy successfully updated.'); + } + catch(\Exception $e){ + Session::flash('alert-error', $e->getMessage()); + } return redirect()->route('taxonomies.index')->withStatus(__('Taxonomy successfully updated.')); } diff --git a/database/migrations/2023_12_07_102246_unique-taxo-label-parent.php b/database/migrations/2023_12_07_102246_unique-taxo-label-parent.php new file mode 100644 index 00000000..04d4cc59 --- /dev/null +++ b/database/migrations/2023_12_07_102246_unique-taxo-label-parent.php @@ -0,0 +1,32 @@ +unique(['label','parent_id']); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('taxonomies', function (Blueprint $table) { + $table->dropUnique(['label','parent_id']); + }); + } +}