mirror of
https://github.com/johrpan/musicus.git
synced 2025-10-26 19:57:25 +01:00
Show recordings in main window
This commit is contained in:
parent
5a95db69fe
commit
baea690ae6
5 changed files with 84 additions and 2 deletions
|
|
@ -315,6 +315,21 @@ impl Database {
|
|||
}
|
||||
}
|
||||
|
||||
pub fn get_recordings_for_person(&self, id: i64) -> Vec<RecordingDescription> {
|
||||
let recordings = recordings::table
|
||||
.inner_join(performances::table.on(performances::recording.eq(recordings::id)))
|
||||
.inner_join(persons::table.on(persons::id.nullable().eq(performances::person)))
|
||||
.filter(persons::id.eq(id))
|
||||
.select(recordings::table::all_columns())
|
||||
.load::<Recording>(&self.c)
|
||||
.expect("Error loading recordings for person!");
|
||||
|
||||
recordings
|
||||
.iter()
|
||||
.map(|recording| self.get_recording_description_for_recording(recording.clone()))
|
||||
.collect()
|
||||
}
|
||||
|
||||
pub fn delete_recording(&self, id: i64) {
|
||||
diesel::delete(recordings::table.filter(recordings::id.eq(id)))
|
||||
.execute(&self.c)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue