<turbo-stream action="append" target="posts_list"><template>    <div class="postbit" id="141612" data-post-id="141612">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="shahryarjb" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/shahryarjb/120/39485_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  shahryarjb
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Hello again, I made some progress</p>
<h4><a name="p-141612-i-added-this-line-in-my-controller-bankerrorwebapisupportcontroller-1" class="anchor" href="#p-141612-i-added-this-line-in-my-controller-bankerrorwebapisupportcontroller-1" aria-label="Heading link" rel="nofollow"></a>I added this line in my controller (BankErrorWeb.ApiSupportController):</h4>
<pre data-code-wrap="elixir"><code class="lang-elixir">require Protocol
Protocol.derive(Jason.Encoder, BankError.ClientApi.Support.SupportSchema, only: [:title, :description, :type, :status, :code, :users, :blog_posts])
</code></pre>
<p>after adding top line code in my controller I added <code>@derive {Jason.Encoder, only: [..]}</code> into my schema files that were connected like, (users, blog_posts, support_replies)</p>
<p>it works but it has a problem, because I don’t input <code>support_replies: {c, users: d}</code> in my preload, I mean</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">Protocol.derive(Jason.Encoder, BankError.ClientApi.Support.SupportSchema, only: [:title, :description, :type, :status, :code, :users, :blog_posts, :support_replies])
</code></pre>
<p>if <code>support_replies</code> added !!! <img src="https://forum.elixirforum.com/images/emoji/apple/frowning_face.png?v=15" title=":frowning_face:" class="emoji" alt=":frowning_face:" loading="lazy" width="20" height="20"> it shows me this error:</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">** (exit) an exception was raised:
    ** (Protocol.UndefinedError) protocol Jason.Encoder not implemented for %BankError.Support.SupportReplySchema{__meta__: #Ecto.Schema.Metadata&lt;:loaded, "support_replies"&gt;
</code></pre>
<pre data-code-wrap="elixir"><code class="lang-elixir">   def show_support_with_code(code, user_id) do
     query = from u in SupportSchema,
         where: u.code == ^code,
         join: a in assoc(u, :users),
         where: a.id == ^user_id,
         left_join: b in assoc(u, :blog_posts),
         left_join: c in assoc(u, :support_replies),
         left_join: d in assoc(c, :users),
         order_by: [desc: c.inserted_at],
         preload: [users: a, blog_posts: b, support_replies: {c, users: d}]
     
     case Repo.one(query) do
        nil -&gt; {:error, :show_support_with_code}
        info -&gt; {:ok, :show_support_with_code, info}
     end
   end
</code></pre>
<hr>
<h2><a name="p-141612-update-2" class="anchor" href="#p-141612-update-2" aria-label="Heading link" rel="nofollow"></a>update</h2>
<p>it is fixed, I had a bad schema relation</p>
<p>Thanks</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="141612" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/how-to-convert-multi-struct-in-a-list-to-json-in-phoenix-controller/24994/12">Post #11</a>
	                </div>
	            </div>
              <div id="likers-container-141612" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="141612"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-solved cat-solved" title="Marked as solution"></div>
  </section>
</div>
</template></turbo-stream><turbo-stream action="replace" target="load-more-container"><template><div id="load-more-container" class="load-more-container">
    <span class="all-loaded">— All posts loaded —</span>
</div></template></turbo-stream>