Switch to sqlite (#22)
* Updated project to use sqlite * Edited migrations directly because I fear no man * Updated search functions and tests to work with sqlite * Updated build tools to remove postgres
This commit is contained in:
@@ -9,6 +9,7 @@ defmodule Pinchflat.Media.MediaItem do
|
||||
alias Pinchflat.Tasks.Task
|
||||
alias Pinchflat.MediaSource.Source
|
||||
alias Pinchflat.Media.MediaMetadata
|
||||
alias Pinchflat.Media.MediaItemSearchIndex
|
||||
|
||||
@allowed_fields ~w(
|
||||
title
|
||||
@@ -46,6 +47,7 @@ defmodule Pinchflat.Media.MediaItem do
|
||||
belongs_to :source, Source
|
||||
|
||||
has_one :metadata, MediaMetadata, on_replace: :update
|
||||
has_one :media_items_search_index, MediaItemSearchIndex, foreign_key: :id
|
||||
|
||||
has_many :tasks, Task
|
||||
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
defmodule Pinchflat.Media.MediaItemSearchIndex do
|
||||
@moduledoc """
|
||||
The MediaItem fts5 search index. Not made to be directly interacted with,
|
||||
but I figured it'd be better to have it in-app so it's not a mystery.
|
||||
"""
|
||||
|
||||
use Ecto.Schema
|
||||
|
||||
@primary_key {:id, :id, autogenerate: true, source: :rowid}
|
||||
schema "media_items_search_index" do
|
||||
field :title, :string
|
||||
field :description, :string
|
||||
|
||||
field :rank, :float, virtual: true
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user