Add the DBIServer to the JSON API.

dev
KKlochko 2 months ago
parent 1d4cf53d76
commit 4291a3090d

@ -23,6 +23,11 @@ defmodule DecentralisedBookIndex.Metadata do
get :read get :read
index :search index :search
end end
base_route "/servers", Metadata.DBIServer do
get :read
index :search
end
end end
end end

@ -248,7 +248,9 @@ defmodule DecentralisedBookIndex.Metadata.Author do
end end
relationships do relationships do
belongs_to :dbi_server, Metadata.DBIServer belongs_to :dbi_server, Metadata.DBIServer do
public? true
end
belongs_to :author_alias_registry, Metadata.AuthorAliasRegistry do belongs_to :author_alias_registry, Metadata.AuthorAliasRegistry do
attribute_writable? true attribute_writable? true

@ -349,7 +349,9 @@ defmodule DecentralisedBookIndex.Metadata.Book do
end end
relationships do relationships do
belongs_to :dbi_server, Metadata.DBIServer belongs_to :dbi_server, Metadata.DBIServer do
public? true
end
belongs_to :book_editions_registry, Metadata.BookEditionsRegistry do belongs_to :book_editions_registry, Metadata.BookEditionsRegistry do
public? true public? true

@ -3,10 +3,15 @@ defmodule DecentralisedBookIndex.Metadata.DBIServer do
otp_app: :decentralised_book_index, otp_app: :decentralised_book_index,
domain: DecentralisedBookIndex.Metadata, domain: DecentralisedBookIndex.Metadata,
data_layer: AshPostgres.DataLayer, data_layer: AshPostgres.DataLayer,
authorizers: [Ash.Policy.Authorizer] authorizers: [Ash.Policy.Authorizer],
extensions: [AshJsonApi.Resource]
alias DecentralisedBookIndex.Metadata alias DecentralisedBookIndex.Metadata
json_api do
type "dbi_server"
end
postgres do postgres do
table "dbi_servers" table "dbi_servers"
repo DecentralisedBookIndex.Repo repo DecentralisedBookIndex.Repo

@ -98,7 +98,9 @@ defmodule DecentralisedBookIndex.Metadata.Publisher do
end end
relationships do relationships do
belongs_to :dbi_server, Metadata.DBIServer belongs_to :dbi_server, Metadata.DBIServer do
public? true
end
has_many :books, Metadata.Book has_many :books, Metadata.Book
end end

Loading…
Cancel
Save