aboutsummaryrefslogtreecommitdiffstats
path: root/app/models
diff options
context:
space:
mode:
authorDavid Heinemeier Hansson <david@loudthinking.com>2017-07-23 17:00:01 -0500
committerGitHub <noreply@github.com>2017-07-23 17:00:01 -0500
commit54b17a1c8323c6ec3a7d6e521179ef36d396d285 (patch)
tree3ebc65daf6d6bfd904a455afc8008478a2b01d55 /app/models
parentc977eef67b5c64932064bc98d2bb293315afc65a (diff)
parent2bbfaf0c9f6ad23cb2c64a917848ca180917ebe2 (diff)
downloadrails-54b17a1c8323c6ec3a7d6e521179ef36d396d285.tar.gz
rails-54b17a1c8323c6ec3a7d6e521179ef36d396d285.tar.bz2
rails-54b17a1c8323c6ec3a7d6e521179ef36d396d285.zip
Merge pull request #32 from rails/explore-polymorphism
Use regular polymorphic associations rather than record_gid
Diffstat (limited to 'app/models')
-rw-r--r--app/models/active_storage/attachment.rb11
1 files changed, 1 insertions, 10 deletions
diff --git a/app/models/active_storage/attachment.rb b/app/models/active_storage/attachment.rb
index 20c619aa5a..d491c7224e 100644
--- a/app/models/active_storage/attachment.rb
+++ b/app/models/active_storage/attachment.rb
@@ -1,24 +1,15 @@
require "active_storage/blob"
-require "global_id"
require "active_support/core_ext/module/delegation"
# Schema: id, record_gid, blob_id, created_at
class ActiveStorage::Attachment < ActiveRecord::Base
self.table_name = "active_storage_attachments"
+ belongs_to :record, polymorphic: true
belongs_to :blob, class_name: "ActiveStorage::Blob"
delegate_missing_to :blob
- def record
- @record ||= GlobalID::Locator.locate(record_gid)
- end
-
- def record=(record)
- @record = record
- self.record_gid = record&.to_gid
- end
-
def purge
blob.purge
destroy