Move scrobble ownership to associative tables in db
This commit is contained in:
parent
29f8837f19
commit
9760ca7fbc
3 changed files with 11 additions and 8 deletions
|
|
@ -15,7 +15,7 @@ pub const database = .{
|
||||||
.port = 5432,
|
.port = 5432,
|
||||||
.username = "postgres",
|
.username = "postgres",
|
||||||
.password = "postgres",
|
.password = "postgres",
|
||||||
.database = "zuletzt_dev",
|
.database = "zuletzt_aos_dev",
|
||||||
.pool_size = 16,
|
.pool_size = 16,
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,6 @@ pub const Album = jetquery.Model(
|
||||||
.{
|
.{
|
||||||
.relations = .{
|
.relations = .{
|
||||||
.masteralbum = jetquery.belongsTo(.Masteralbum, .{}),
|
.masteralbum = jetquery.belongsTo(.Masteralbum, .{}),
|
||||||
.scrobbles = jetquery.hasMany(.Scrobble, .{}),
|
|
||||||
.ratings = jetquery.hasMany(.Rating, .{}),
|
.ratings = jetquery.hasMany(.Rating, .{}),
|
||||||
.aliases = jetquery.hasMany(.Alias, .{}),
|
.aliases = jetquery.hasMany(.Alias, .{}),
|
||||||
.albumsongs = jetquery.hasMany(.Albumsong, .{}),
|
.albumsongs = jetquery.hasMany(.Albumsong, .{}),
|
||||||
|
|
@ -114,8 +113,9 @@ pub const Scrobble = jetquery.Model(
|
||||||
"scrobbles",
|
"scrobbles",
|
||||||
struct {
|
struct {
|
||||||
id: i32,
|
id: i32,
|
||||||
song_id: i32,
|
albumartists_id: i32,
|
||||||
album_id: i32,
|
songsartists_id: i32,
|
||||||
|
albumsongs_id: i32,
|
||||||
date: jetquery.DateTime,
|
date: jetquery.DateTime,
|
||||||
created_at: jetquery.DateTime,
|
created_at: jetquery.DateTime,
|
||||||
updated_at: jetquery.DateTime,
|
updated_at: jetquery.DateTime,
|
||||||
|
|
@ -124,7 +124,7 @@ pub const Scrobble = jetquery.Model(
|
||||||
.relations = .{
|
.relations = .{
|
||||||
.song = jetquery.belongsTo(.Song, .{}),
|
.song = jetquery.belongsTo(.Song, .{}),
|
||||||
.album = jetquery.belongsTo(.Album, .{}),
|
.album = jetquery.belongsTo(.Album, .{}),
|
||||||
.scrobbleartists = jetquery.hasMany(.Scrobbleartist, .{}),
|
//.scrobbleartists = jetquery.hasMany(.Scrobbleartist, .{}),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
@ -143,7 +143,6 @@ pub const Song = jetquery.Model(
|
||||||
.{
|
.{
|
||||||
.relations = .{
|
.relations = .{
|
||||||
.mastersong = jetquery.belongsTo(.Mastersong, .{}),
|
.mastersong = jetquery.belongsTo(.Mastersong, .{}),
|
||||||
.scrobbles = jetquery.hasMany(.Scrobble, .{}),
|
|
||||||
.ratings = jetquery.hasMany(.Rating, .{}),
|
.ratings = jetquery.hasMany(.Rating, .{}),
|
||||||
.aliases = jetquery.hasMany(.Alias, .{}),
|
.aliases = jetquery.hasMany(.Alias, .{}),
|
||||||
.songartists = jetquery.hasMany(.Songartist, .{}),
|
.songartists = jetquery.hasMany(.Songartist, .{}),
|
||||||
|
|
@ -166,6 +165,7 @@ pub const Albumartist = jetquery.Model(
|
||||||
.relations = .{
|
.relations = .{
|
||||||
.album = jetquery.belongsTo(.Album, .{}),
|
.album = jetquery.belongsTo(.Album, .{}),
|
||||||
.artist = jetquery.belongsTo(.Artist, .{}),
|
.artist = jetquery.belongsTo(.Artist, .{}),
|
||||||
|
.scrobbles = jetquery.hasMany(.Scrobble, .{}),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
@ -184,6 +184,7 @@ pub const Songartist = jetquery.Model(
|
||||||
.relations = .{
|
.relations = .{
|
||||||
.song = jetquery.belongsTo(.Song, .{}),
|
.song = jetquery.belongsTo(.Song, .{}),
|
||||||
.artist = jetquery.belongsTo(.Artist, .{}),
|
.artist = jetquery.belongsTo(.Artist, .{}),
|
||||||
|
.scrobbles = jetquery.hasMany(.Scrobble, .{}),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
@ -202,6 +203,7 @@ pub const Albumsong = jetquery.Model(
|
||||||
.relations = .{
|
.relations = .{
|
||||||
.album = jetquery.belongsTo(.Album, .{}),
|
.album = jetquery.belongsTo(.Album, .{}),
|
||||||
.song = jetquery.belongsTo(.Song, .{}),
|
.song = jetquery.belongsTo(.Song, .{}),
|
||||||
|
.scrobbles = jetquery.hasMany(.Scrobble, .{}),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -7,8 +7,9 @@ pub fn up(repo: anytype) !void {
|
||||||
"scrobbles",
|
"scrobbles",
|
||||||
&.{
|
&.{
|
||||||
t.primaryKey("id", .{}),
|
t.primaryKey("id", .{}),
|
||||||
t.column("song_id", .integer, .{}),
|
t.column("albumartists_id", .integer, .{}),
|
||||||
t.column("album_id", .integer, .{}),
|
t.column("songsartists_id", .integer, .{}),
|
||||||
|
t.column("albumsongs_id", .integer, .{}),
|
||||||
t.column("date", .datetime, .{}),
|
t.column("date", .datetime, .{}),
|
||||||
t.timestamps(.{}),
|
t.timestamps(.{}),
|
||||||
},
|
},
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue