Module: VestalVersions::Users::VersionMethods
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/vestal_versions/users.rb
Overview
Instance methods added to VestalVersions::Version to accomodate incoming user information.
Instance Method Summary collapse
-
#user_with_name ⇒ Object
Overrides the
user
method created by the polymorphicbelongs_to
user association. -
#user_with_name=(value) ⇒ Object
Overrides the
user=
method created by the polymorphicbelongs_to
user association.
Instance Method Details
#user_with_name ⇒ Object
Overrides the user
method created by the polymorphic belongs_to
user association. If the association is absent, defaults to the user_name
string column. This allows VestalVersions::Version#user to either return an ActiveRecord::Base object or a string, depending on what is sent to the user_with_name=
method.
37 38 39 |
# File 'lib/vestal_versions/users.rb', line 37 def user_with_name user_without_name || user_name end |
#user_with_name=(value) ⇒ Object
Overrides the user=
method created by the polymorphic belongs_to
user association. Based on the class of the object given, either the user
association columns or the user_name
string column is populated.
44 45 46 47 48 49 |
# File 'lib/vestal_versions/users.rb', line 44 def user_with_name=(value) case value when ActiveRecord::Base then self.user_without_name = value else self.user_name = value end end |