diff options
Diffstat (limited to 'src/main/java/com/blog/web/controllers/ArticleController.java')
| -rw-r--r-- | src/main/java/com/blog/web/controllers/ArticleController.java | 25 |
1 files changed, 21 insertions, 4 deletions
diff --git a/src/main/java/com/blog/web/controllers/ArticleController.java b/src/main/java/com/blog/web/controllers/ArticleController.java index 0e58877..0cdff15 100644 --- a/src/main/java/com/blog/web/controllers/ArticleController.java +++ b/src/main/java/com/blog/web/controllers/ArticleController.java @@ -7,10 +7,7 @@ import jakarta.validation.Valid; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.ModelAttribute; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.*; import java.time.LocalDateTime; import java.util.List; @@ -30,6 +27,13 @@ public class ArticleController { return "index"; } + @GetMapping("/articles/{articleId}") + public String showArticle(@PathVariable("articleId") long articleId, Model model) { + ArticleDto articleDto = articleService.findArticleById(articleId); + model.addAttribute("article", articleDto); + return "articles/show"; + } + @GetMapping("/articles/new") public String createArticleForm(Model model) { Article article = new Article(); @@ -49,6 +53,12 @@ public class ArticleController { return "redirect:/articles"; } + @GetMapping("/articles/delete/{articleId}") + public String deleteArticle(@PathVariable("articleId") Long articleId) { + articleService.delete(articleId); + return "redirect:/articles"; + } + @GetMapping("/articles/edit/{articleId}") public String editArticleForm(@PathVariable("articleId") long articleId, Model model) { ArticleDto articleDto = articleService.findArticleById(articleId); @@ -68,6 +78,13 @@ public class ArticleController { return "redirect:/articles"; } + @GetMapping("/articles/search") + public String searchArticle(@RequestParam(value = "search") String search, Model model) { + List<ArticleDto> articles = articleService.searchArticles(search); + model.addAttribute("articles", articles); + return "index"; + } + @GetMapping("/articles") public String getArticles() { return "redirect:/"; |
