前提・実現したいこと
Springbootを使用してフォームに名前を入力して、その入力された値を削除するというプログラムを作成しています。
実現したいこととしては、別画面で削除をしたいということで、
参考サイトを元に作成しており、削除だけを別に行いたいです。
そして、削除はフォームで入力した値を削除したいです。
発生している問題・エラーメッセージ
Whitelabel Error Page This application has no explicit mapping for /error, so you are seeing this as a fallback. Fri Aug 13 11:16:35 JST 2021 There was an unexpected error (type=Not Found, status=404). No message available
このようにコントローラがうまく機能せず遷移ができていない状態です。
該当のソースコード
一部のみ
html
1<form th:action="@{/index/name-delete/{student_name} (student_name=*{student_name})}" 2 th:method="post" th:object="${student}"> 3 4<h4> 5名前を入力してください。 6</h4> 7 8<p class="text-center"><b>名前</b><font class="text-danger"><b>(必須)</b></font> 9 10<input type="text" id="student_name" name="student_name" required 11 th:value="*{student_name}" /></p> 12 13 14<br> 15<br> 16<button class="btn btn-danger float-right">退会</button> 17 18</form>
一部のみ
java
1 @RequestMapping("/name-delete/{student_name}") 2 public String delete(@PathVariable("student_name") String student_name) { 3 userService.delete(student_name); 4 return "redirect:/index/studentlist"; 5 6 } 7 8 /** 9 *削除画面 10 */ 11 @GetMapping("delete") 12 public String namedelete(@ModelAttribute("student") Student student, Model model) { 13 model.addAttribute("student",new Student()); 14 return "/delete"; 15 }
MySQL
1create table IF NOT EXISTS `student_database`.`student` ( 2`student_id` int(30) primary key auto_increment , 3`student_name` varchar(30) not null , 4`student_address` varchar(100) not null , 5`student_tel` varchar(15) not null 6);
試したこと
コントローラに直接値を入力して実行することで削除自体はできました。
入力した値がうまく渡せていないのが原因だと考えているので、
削除を行う画面とコントローラのコードだけを載せています。
補足情報(FW/ツールのバージョンなど)
色々な方の質問やサイトを参考にさせていただいたのですが、
うまくいかず悩んでいる状態です。
基本的な機能だとは思いますが、分かる方がいらっしゃいましたら教えていただけると嬉しいです。
回答1件
あなたの回答
tips
プレビュー