mirror of
https://github.com/narrrl/narl-workspace.git
synced 2026-11-03 16:41:27 +01:00
fix: let a media file belong to more than one entry
media.entry_id modelled ownership as one entry per file, but link_to_entry reassigns it on every save. Embedding the same image in a second entry therefore moved the claim, and deleting that second entry deleted the file out from under the first — a broken image in the entry and a 404 on its share link. A join table replaces the column. Deleting an entry now removes only the files no other entry embeds, and link_to_entry runs in a transaction so an entry is never briefly attached to nothing while its share link is being read.
This commit is contained in:
1 parent
8da0a30497
commit
1e0f2f8792
6 files changed
+94
-31
No files matched your search
+2
-1
@@ -33,7 +33,8 @@ export interface MediaFile {
|
||||
size: number
|
||||
created_at: number
|
||||
url: string
|
||||
entry_id: number | null
|
||||
/** Every entry that embeds this file — a file may be used by several. */
|
||||
entry_ids: number[]
|
||||
}
|
||||
|
||||
export class ApiError extends Error {
|
||||
|
||||
Reference in new issue
Block a user