Packages
arke
0.1.1
1.1.33
retired
0.6.3
0.6.2
0.6.1
0.6.0
0.5.0
0.4.5
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
0.4.0-bulk.1
0.4.0-bulk.0
0.3.17
0.3.16
0.3.15
0.3.14
0.3.13
0.3.12
0.3.11
0.3.10
0.3.9
0.3.8
0.3.7
0.3.6
0.3.5
0.3.4
0.3.3
0.3.2
0.3.1
0.3.0
0.1.38
0.1.37
0.1.36
0.1.35
0.1.34
0.1.33
0.1.32
0.1.31
0.1.30
0.1.29
0.1.28
0.1.27
0.1.26
0.1.25
0.1.24
0.1.23
0.1.22
0.1.21
0.1.20
0.1.19
0.1.18
0.1.17
0.1.16
0.1.15
0.1.14
0.1.13
0.1.12
0.1.11
0.1.10
0.1.9
0.1.8
0.1.7
0.1.6
0.1.5
0.1.4
0.1.3
0.1.2
0.1.1
0.1.0
Arke low code framework Core
Current section
Files
Jump to
Current section
Files
lib/arke/core/project.ex
defmodule Arke.Core.Project do
@moduledoc """
Define a Project structure where more Arke will be grouped
{arke_struct} = Project
"""
use Arke.System
@persistence Application.get_env(:arke, :persistence)
arke id: :arke_project, label: "Arke Project" do
parameter :label, :string, required: true
parameter :description, :string, required: false
parameter :persistence, :dict, required: true, values: nil, default_dict: %{}
parameter :type, :string, required: true, default_string: :postgres_schema
end
def on_create(unit) do
persistence_fn = @persistence[:arke_postgres][:create_project]
unit |> persistence_fn.()
{:ok, unit}
end
def on_delete(unit) do
persistence_fn = @persistence[:arke_postgres][:delete_project]
unit |> persistence_fn.()
{:ok, nil}
end
end