diff options
author | George Claghorn <george@basecamp.com> | 2019-05-23 12:33:34 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-05-23 12:33:34 -0400 |
commit | 639d7beb0b2f2c412b6f561f10bc1d66ab3b0b1e (patch) | |
tree | eb368b86d475a4cd3449de50bc8af3d40e4b48fa /activestorage | |
parent | eba859d867454cd441f29ff15d8dbf442e51919c (diff) | |
parent | f002be148e1377709ed28b8e80c5db76ee2fa410 (diff) | |
download | rails-639d7beb0b2f2c412b6f561f10bc1d66ab3b0b1e.tar.gz rails-639d7beb0b2f2c412b6f561f10bc1d66ab3b0b1e.tar.bz2 rails-639d7beb0b2f2c412b6f561f10bc1d66ab3b0b1e.zip |
Merge pull request #33437 from CodingAnarchy/delegate_missing_allow_nil
Add :allow_nil option to delegate_missing_to
Diffstat (limited to 'activestorage')
-rw-r--r-- | activestorage/CHANGELOG.md | 15 | ||||
-rw-r--r-- | activestorage/lib/active_storage/attached/one.rb | 2 |
2 files changed, 16 insertions, 1 deletions
diff --git a/activestorage/CHANGELOG.md b/activestorage/CHANGELOG.md index 1a03ead870..351d8687a4 100644 --- a/activestorage/CHANGELOG.md +++ b/activestorage/CHANGELOG.md @@ -1,3 +1,18 @@ +* Method calls on singular attachments return `nil` when no file is attached. + + Previously, assuming the following User model, `user.avatar.filename` would + raise a `Module::DelegationError` if no avatar was attached: + + ```ruby + class User < ApplicationRecord + has_one_attached :avatar + end + ``` + + They now return `nil`. + + *Matthew Tanous* + * The mirror service supports direct uploads. New files are directly uploaded to the primary service. When a diff --git a/activestorage/lib/active_storage/attached/one.rb b/activestorage/lib/active_storage/attached/one.rb index c039226fcd..003be1cb43 100644 --- a/activestorage/lib/active_storage/attached/one.rb +++ b/activestorage/lib/active_storage/attached/one.rb @@ -3,7 +3,7 @@ module ActiveStorage # Representation of a single attachment to a model. class Attached::One < Attached - delegate_missing_to :attachment + delegate_missing_to :attachment, allow_nil: true # Returns the associated attachment record. # |