slightly changed how files are stored in the bucket and allows post deletion

This commit is contained in:
2026-03-31 17:12:40 -04:00
parent 1c1830b086
commit 53467cd611
7 changed files with 295 additions and 3 deletions

View File

@@ -11,15 +11,17 @@ defmodule MixerWeb.UploadController do
|> put_status(:unauthorized)
|> json(%{error: "authentication required"})
else
scope = %{id: Ash.UUID.generate()}
media_id = Ash.UUID.generate()
scope = %{user_id: actor.id, media_id: media_id}
case MediaUploader.store({upload, scope}) do
{:ok, file_name} ->
s3_key = "uploads/media/#{scope.id}/#{file_name}"
s3_key = "uploads/media/#{scope.user_id}/#{scope.media_id}/#{file_name}"
url = MediaUploader.url({file_name, scope})
Mixer.Posts.Media
|> Ash.Changeset.for_create(:upload, %{s3_key: s3_key}, actor: actor)
|> Ash.Changeset.force_change_attribute(:id, media_id)
|> Ash.create()
|> case do
{:ok, media} ->