Hello,
I currently have 2 tables: Posts and Users. It’s a one-to-many, where a post belongs_to a user and a user has_many posts.
I am kind of stuck at the moment. I have correctly seeded the data, and have the endpoints working. I currently have user_id returning to the post table and vice-versa, but I want to return an entire entity instead of just the id in the json.
Example of what I currently have:
{
“content”: “Post Content 1”,
“id”: 97,
“is_question”: true,
“user_id”: 10
},
Example of what I would like to see:
{
“content”: “Post Content 1”,
“id”: 97,
“is_question”: true,
“user”: {
“username”: “username1234”,
“password”: “helpme”,
“posts”: [all of the user’s posts] (or have this not show is fine too)
},
I have currently tried to reconfigure my list_posts method to this:
Post
|> order_by(asc: :id)
|> preload([:user])
|> Repo.all()
and I reconfigured my view to accept User as an object. But it is erroring out and saying that the user’s posts are not loaded.
So my question: how do I preload those posts, or how can I disable it from pulling those extra fields into the extra fields for Posts User, or what’s the general advice to handle this?
Thank you, sorry for long question.
** what’s the best way to paste code in, I was having it highlight everything in the question with the three appostraphes ```?