diff --git a/pkg/app/post_routes.go b/pkg/app/post_routes.go index 0276c80..f43fc7f 100644 --- a/pkg/app/post_routes.go +++ b/pkg/app/post_routes.go @@ -170,6 +170,7 @@ func postUpdate(c *gin.Context) { Code: http.StatusBadRequest, Message: err.Error(), }) + return } c.JSON(http.StatusOK, models.PostListItem{ diff --git a/pkg/services/post.go b/pkg/services/post.go index 9e89445..7f9287b 100644 --- a/pkg/services/post.go +++ b/pkg/services/post.go @@ -72,9 +72,6 @@ func UpdatePost(id string, model models.PostUpdateModel) (*database.Post, error) if result.Error != nil { return nil, result.Error } - - database.DB.Model(&post).Association("Tags").Replace(tags) - post.SourceURL = model.SourceURL result = database.DB.Save(&post) @@ -82,6 +79,10 @@ func UpdatePost(id string, model models.PostUpdateModel) (*database.Post, error) return nil, result.Error } + err = database.DB.Model(&post).Association("Tags").Replace(tags) + if err != nil { + return nil, err + } return &post, nil } diff --git a/web/app/src/routes/Posts.svelte b/web/app/src/routes/Posts.svelte index e5171e4..ef880de 100644 --- a/web/app/src/routes/Posts.svelte +++ b/web/app/src/routes/Posts.svelte @@ -51,15 +51,16 @@ searchTerms = value.detail.tags; }; - onMount(() => { + $: { queryParams = queryString.parse(location.search); if (queryParams.tags) { searchTerms = queryParams.tags.split(" "); } else { searchTerms = []; } + posts = []; getData(); - }); + } const onSearch = (i) => { if (searchTerms.length > 0) { @@ -115,15 +116,15 @@ -
- {#if post.tags} +
+ {#if post.tags} {#each post.tags as tag (tag)} {/each} - {:else} - - {/if} -
+ {:else} + + {/if} +
{/each}