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 | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/main/java/com/blog/web/controllers/ArticleController.java b/src/main/java/com/blog/web/controllers/ArticleController.java index 9d096f5..2b32070 100644 --- a/src/main/java/com/blog/web/controllers/ArticleController.java +++ b/src/main/java/com/blog/web/controllers/ArticleController.java @@ -7,6 +7,7 @@ import org.springframework.stereotype.Controller; import org.springframework.ui.Model; 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 java.util.List; @@ -38,4 +39,23 @@ public class ArticleController { articleService.saveArticle(article); return "redirect:/articles"; } + + @GetMapping("/articles/edit/{articleId}") + public String editArticleForm(@PathVariable("articleId") long articleId, Model model) { + ArticleDto article = articleService.findArticleById(articleId); + model.addAttribute("article", article); + return "articles/edit"; + } + + @PostMapping("/articles/edit/{articleId}") + public String updateArticle(@PathVariable("articleId") Long articleId, @ModelAttribute("article") ArticleDto article) { + article.setId(articleId); + articleService.updateArticle(article); + return "redirect:/articles"; + } + + @GetMapping("/articles") + public String getArticles() { + return "redirect:/"; + } } |
