hngprojects / hng_boilerplate_python_fastapi_web

Apache License 2.0
154 stars 137 forks source link

feat: delete blog like #967

Closed chimeziriobioha closed 3 weeks ago

chimeziriobioha commented 3 weeks ago

Description:

An endpoint to enable users who previously liked a blog post to remove the like.

Related Issue:

[FEAT]: Endpoint To Delete Blog Like #965

Motivation and Context

Readers should be able to remove like from a particular post after adding one, if they posted it in error or just changed their mind.

How Has This Been Tested?

Screenshots:

Delete Blog Like Success

delete blog like success

Non Owner Request

delete blog like not owner

Blog Like Not Available

delete blog like not found

Types of changes

Checklist:

Added Fix:

Enable /api/v1/blogs/{blog_id}/like endpoint to automatically remove existing dislike by the current_user before creating new like, and vice versa with the /api/v1/blogs/{blog_id}/dislike endpoint.

This is important if a user clicks the like button after already clicking the dislike button without first removing the dislike. Otherwise, the database will have unintended records of both like and dislike for the same user on the same blog