fix to autoloading

This commit is contained in:
dreamer 2020-07-18 04:18:13 +02:00
parent 0b43b70acb
commit e924367e17

View File

@ -1,5 +1,4 @@
local autoload = require("lapis.util").autoload local autoload = require("lapis.util").autoload
return autoload("models")
local Model = require("lapis.db.model").Model local Model = require("lapis.db.model").Model
local schema = require("lapis.db.schema") local schema = require("lapis.db.schema")
@ -11,15 +10,16 @@ local types = schema.types
-- name/date -- name/date
local Labels = Model:extend("labels", { local Labels = Model:extend("labels", {
{"releases", has_many = "Releases"} primary_key = "uuid",
primary_key "uuid",
relations = { relations = {
{"releases", has_many = "Releases"},
{"artists", has_many = "Artists"}
} }
}) })
-- name/label/date/id -- name/label/date/id
local Releases = Model:extend("releases", { local Releases = Model:extend("releases", {
primary_key "uuid" primary_key = "uuid",
relations = { relations = {
{"artists", has_many = "Artists"}, {"artists", has_many = "Artists"},
{"tracks", has_many = "Tracks"}, {"tracks", has_many = "Tracks"},
@ -29,22 +29,22 @@ local Releases = Model:extend("releases", {
-- name/dj/date -- name/dj/date
local Mixes = Model:extend("mixes", { local Mixes = Model:extend("mixes", {
primary_key "uuid", primary_key = "uuid",
relations = { relations = {
{"artists", has_many = "Artists"} {"artists", has_many = "Artists"}
} }
}) })
-- name/date/bio/urls -- name/date/bio/urls
local Artists = Model:extend("artists"), { local Artists = Model:extend("artists", {
primary_key "uuid" primary_key = "uuid"
}) })
-- title/unique name == `lower(artist+title)` -- title/unique name == `lower(artist+title)`
local Tracks = Model:extend("tracks", { local Tracks = Model:extend("tracks", {
primary_key "uuid", primary_key = "uuid",
relations = { relations = {
{"artist", belongs_to = "Artists" {"artist", belongs_to = "Artists"},
{"releases", has_many = "Releases"}, {"releases", has_many = "Releases"},
{"mixes", has_many = "Mixes"}, {"mixes", has_many = "Mixes"},
-- {"copies", has_many = "Tracks"}, -- {"copies", has_many = "Tracks"},
@ -54,14 +54,14 @@ local Tracks = Model:extend("tracks", {
-- name/id -- name/id
local Stations = Model:extend("stations", { local Stations = Model:extend("stations", {
primary_key "uuid" primary_key = "uuid"
}) })
-- date -- date
local Airtime = Model:extend("airtime", { local Airtime = Model:extend("airtime", {
relations = { relations = {
{"track", belongs_to = "Tracks"}, {"track", belongs_to = "Tracks"},
{"stations"}, has_one = "Stations"} {"stations", has_one = "Stations"}
} }
}) })
@ -71,7 +71,7 @@ local Airtime = Model:extend("airtime", {
-- name/email/password/last_login -- name/email/password/last_login
local Users = Model:extend("users", { local Users = Model:extend("users", {
primary_key "uuid" primary_key = "uuid"
}) })
-- date? -- date?
@ -87,3 +87,5 @@ local Favorite_mixes = Model:extend("favorite_mixes", {})
local Favorite_artists = Model:extend("favorite_artists", {}) local Favorite_artists = Model:extend("favorite_artists", {})
local Favorite_releases = Model:extend("favorite_releases", {}) local Favorite_releases = Model:extend("favorite_releases", {})
local Favorite_labels = Model:extend("favorite_labels", {}) local Favorite_labels = Model:extend("favorite_labels", {})
return autoload("models")