Active Storage dosya güncelleme

Öncelikle herkese iyi forumlar.
Active Storage kullanarak User modelime bir video kısmı tanımladım ve bu kısmın kullanıcı oluştururken boş kalmasını sağladım(video kısmı sonra kullanıcı tarafından sağlanacağı için).

Sonra bu video kısmını sağlamak için gerekli işlemleri yaptım fakat başarılı olamadım yardımcı olurmusunuz ?

User.rb:

class User < ApplicationRecord
  has_one_attached :video
end

users_controller.rb:

class UsersController < ApplicationController
  def new
    @user = User.new
  end

  def create
    @user = User.new(params.require(:user).permit(:username,:password,:video))

    @user.id = User.last ? User.last.id + 1 : 1

    if @user.save
      redirect_to(user_path(@user.id))
    else
      render :new
    end
  end

  def show
    @user = User.find(params[:id])
  end

  def edit
    @user = User.find(params[:id])
  end

  def update
    @user = User.find(params[:id])

    @user.video.purge
    @user.video.attach(params[:video])
    
    redirect_to("/")
  end
end

edit.html.erb ve new.html.erb:

<%= form_for @user do |form|%>
  <div>
    <%= form.label :username%>
    <%= form.text_field :username%>
  </div>

  <div>
    <%= form.label :password%>
    <%= form.text_field :password%>
  </div>

  <div>
    <%= form.label :video%>
    <%= form.file_field :video%>
  </div>

  <%= form.submit :Onayla%>
<%end%>

Kullanıcı sınıfı için migration dosyası:

class CreateUsers < ActiveRecord::Migration[7.0]
  def change
    create_table :users do |t|
      t.string :username
      t.string :password

      t.timestamps
    end
  end
end

Active Storage migration dosyası:

# This migration comes from active_storage (originally 20170806125915)
class CreateActiveStorageTables < ActiveRecord::Migration[5.2]
  def change
    # Use Active Record's configured type for primary and foreign keys
    primary_key_type, foreign_key_type = primary_and_foreign_key_types

    create_table :active_storage_blobs, id: primary_key_type do |t|
      t.string   :key,          null: false
      t.string   :filename,     null: false
      t.string   :content_type
      t.text     :metadata
      t.string   :service_name, null: false
      t.bigint   :byte_size,    null: false
      t.string   :checksum

      if connection.supports_datetime_with_precision?
        t.datetime :created_at, precision: 6, null: false
      else
        t.datetime :created_at, null: false
      end

      t.index [ :key ], unique: true
    end

    create_table :active_storage_attachments, id: primary_key_type do |t|
      t.string     :name,     null: false
      t.references :record,   null: false, polymorphic: true, index: false, type: foreign_key_type
      t.references :blob,     null: false, type: foreign_key_type

      if connection.supports_datetime_with_precision?
        t.datetime :created_at, precision: 6, null: false
      else
        t.datetime :created_at, null: false
      end

      t.index [ :record_type, :record_id, :name, :blob_id ], name: :index_active_storage_attachments_uniqueness, unique: true
      t.foreign_key :active_storage_blobs, column: :blob_id
    end

    create_table :active_storage_variant_records, id: primary_key_type do |t|
      t.belongs_to :blob, null: false, index: false, type: foreign_key_type
      t.string :variation_digest, null: false

      t.index [ :blob_id, :variation_digest ], name: :index_active_storage_variant_records_uniqueness, unique: true
      t.foreign_key :active_storage_blobs, column: :blob_id
    end
  end

  private

  def primary_and_foreign_key_types
    config = Rails.configuration.generators
    setting = config.options[config.orm][:primary_key_type]
    primary_key_type = setting || :primary_key
    foreign_key_type = setting || :bigint
    [primary_key_type, foreign_key_type]
  end
end

Şimdiden teşekkürler.

Burdaki sorunu şu şekilde çözdüm:

def update
  @user = User.find(params[:id])
  @user.update(params.require(:user).permit(:video))

  redirect_to("/")
end