Current section

Files

Jump to
ami lib ami course_resource.ex
Raw

lib/ami/course_resource.ex

defmodule Ami.CourseResource do
use Ecto.Schema
import Ecto.{
Query,
Changeset
}
alias Ami.{
Repo,
Course,
ResourceAttachment
}
schema "courses_resources" do
field(:position, :integer)
timestamps()
belongs_to(:course, Course)
belongs_to(:resource_attachment, ResourceAttachment)
end
def changeset(struct, params \\ %{}) do
struct
|> cast(params, [:course_id, :resource_attachment_id, :position])
|> cast_assoc(:resource_attachment)
|> case do
%{valid?: true, changes: changes} = changeset when changes == %{} ->
%{changeset | action: :ignore}
changeset ->
changeset
end
end
def update_position(id, position) do
Repo.get!(__MODULE__, id)
|> change(%{position: position})
|> Repo.update()
end
end