delete gel db database schema
This commit is contained in:
@@ -1,62 +1,4 @@
|
|||||||
using future simple_scoping;
|
using future simple_scoping;
|
||||||
|
|
||||||
module default {
|
module default {
|
||||||
scalar type access_status extending enum<ok, denied, expired, error>;
|
|
||||||
|
|
||||||
type IPAddr {
|
|
||||||
required value: str {
|
|
||||||
constraint exclusive;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
type UserAgent {
|
|
||||||
required value: str {
|
|
||||||
constraint exclusive;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
type files {
|
|
||||||
required file_id: str {
|
|
||||||
constraint exclusive;
|
|
||||||
};
|
|
||||||
required file_name: str;
|
|
||||||
required file_size: str;
|
|
||||||
required note: str;
|
|
||||||
|
|
||||||
required content_type: str {
|
|
||||||
readonly := true;
|
|
||||||
}
|
|
||||||
property expires_at: datetime;
|
|
||||||
required uploaded_at: datetime {
|
|
||||||
readonly := true;
|
|
||||||
}
|
|
||||||
|
|
||||||
multi accesses -> file_access {
|
|
||||||
on source delete delete target if orphan;
|
|
||||||
};
|
|
||||||
required property user_id: str {
|
|
||||||
readonly := true;
|
|
||||||
};
|
|
||||||
|
|
||||||
index on ((.file_id, .file_name, .expires_at, .user_id));
|
|
||||||
}
|
|
||||||
|
|
||||||
type file_access {
|
|
||||||
required link ip -> IPAddr {
|
|
||||||
readonly := true;
|
|
||||||
on source delete delete target if orphan;
|
|
||||||
}
|
|
||||||
required link user_agent -> UserAgent {
|
|
||||||
readonly := true;
|
|
||||||
on source delete delete target if orphan;
|
|
||||||
}
|
|
||||||
|
|
||||||
required status: access_status {
|
|
||||||
default := access_status.ok;
|
|
||||||
}
|
|
||||||
required at: datetime {
|
|
||||||
readonly := true;
|
|
||||||
default := datetime_of_statement();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user