@@ -10,14 +10,14 @@ defmodule CodeCorpsWeb.ProjectSkillController do
1010
1111 @ spec index ( Conn . t , map ) :: Conn . t
1212 def index ( % Conn { } = conn , % { } = params ) do
13- with project_skills <- ProjectSkill |> Query . id_filter ( params ) |> Repo . all do
13+ with project_skills <- ProjectSkill |> Query . id_filter ( params ) |> Repo . all |> preload ( ) do
1414 conn |> render ( "index.json-api" , data: project_skills )
1515 end
1616 end
1717
1818 @ spec show ( Conn . t , map ) :: Conn . t
1919 def show ( % Conn { } = conn , % { "id" => id } ) do
20- with % ProjectSkill { } = project_skill <- ProjectSkill |> Repo . get ( id ) do
20+ with % ProjectSkill { } = project_skill <- ProjectSkill |> Repo . get ( id ) |> preload ( ) do
2121 conn |> render ( "show.json-api" , data: project_skill )
2222 end
2323 end
@@ -26,8 +26,9 @@ defmodule CodeCorpsWeb.ProjectSkillController do
2626 def create ( % Conn { } = conn , % { } = params ) do
2727 with % User { } = current_user <- conn |> Guardian.Plug . current_resource ,
2828 { :ok , :authorized } <- current_user |> Policy . authorize ( :create , % ProjectSkill { } , params ) ,
29- { :ok , % ProjectSkill { } = project_skill } <- % ProjectSkill { } |> ProjectSkill . create_changeset ( params ) |> Repo . insert do
30-
29+ { :ok , % ProjectSkill { } = project_skill } <- % ProjectSkill { } |> ProjectSkill . create_changeset ( params ) |> Repo . insert ( ) ,
30+ project_skill <- preload ( project_skill )
31+ do
3132 current_user . id |> SegmentTracker . track ( "Added Project Skill" , project_skill )
3233 conn |> put_status ( :created ) |> render ( "show.json-api" , data: project_skill )
3334 end
@@ -44,4 +45,12 @@ defmodule CodeCorpsWeb.ProjectSkillController do
4445 conn |> Conn . assign ( :project_skill , project_skill ) |> send_resp ( :no_content , "" )
4546 end
4647 end
48+
49+ @ preloads [
50+ :skill
51+ ]
52+
53+ def preload ( data ) do
54+ Repo . preload ( data , @ preloads )
55+ end
4756end
0 commit comments