Ok so the basis is that I want to be able to have comments on each of my post. The comments will have a reply button for each. It’s not multi threaded so one comment will have many replies. Those replies won’t have replies. Also I want to be able to like and dislike a comment/reply. All of this will not be bind to the user model or any of such. The public visitors will be able to add comments and reply to comments but the approval is needed.
So here is the logic I got so far. Am I on the right track here (hoping this post may help someone else as well):
So i create aComment
model. And then create a table named comments
. And I create a model named Reply
and a table named replies
And finally, a model name Like
and it’s table likes
So the relationship is: comments
will have many replies
and replies
belongs to one comment
replies
& comments
will have many likes
.
And now for the logic:
I will use AJAX to call the store function on the CommentController
to store comments. And I will call the store function on the ReplyController
to store the replies. As for the likes, LikeController
store function will store the likes for the comment and reply.
Here is the table structure:
-
Comments table
- id
- post_id
- name
- comment
- approved
- timestap
-
Replies table
- id
- comment_id
- name
- comment (or reply)
- approved
- timestamp
-
Likes table
- id
- comment_id
- reply_id
- like
- dislike
- timestamp
Now what I do not understand is, likes table. Is it right to have comment_id
and reply_id
and also like
and dislike
? I could call the store function everytime someone clicks the like or dislike and have it stored in the table and update the column if it is a reply or a comment by it’s id
to the respective id columns. Is the logic right?
Also, if you guys have any suggestions or better and efficient way of doing this, please let me know. This is getting too long so I’ll just leave it here.
Edit
Also forgot to mention that I am not sure how I will be taking the amount of likes from db to blade and count it. Not with the current structure mentioned above.
via Chebli Mohamed
Aucun commentaire:
Enregistrer un commentaire