defmodule GitGud.PullRequests.PrReviewRequest do
use Ecto.Schema
import Ecto.Changeset
alias GitGud.Accounts.User
alias GitGud.PullRequests.PullRequest
schema "pr_review_requests" do
belongs_to :pull_request, PullRequest
belongs_to :reviewer, User
belongs_to :requested_by, User
timestamps(type: :utc_datetime, updated_at: false)
end
def changeset(request, attrs) do
request
|> cast(attrs, [:pull_request_id, :reviewer_id, :requested_by_id])
|> validate_required([:pull_request_id, :reviewer_id])
|> foreign_key_constraint(:reviewer_id)
|> unique_constraint([:pull_request_id, :reviewer_id],
name: :pr_review_requests_pull_request_id_reviewer_id_index,
message: "has already been asked to review"
)
end
end
neiam /gitgud
Git Gud
public · Issues · Pulls · Labels · Forks · Compare · Actions success · Packages
⭐
Log in to mark this repository.
779 B · text
History
6280797