create module for target association
This commit is contained in:
parent
c8d43a893d
commit
1c291260a2
2 changed files with 15 additions and 5 deletions
14
lib/diaspora/fields/target.rb
Normal file
14
lib/diaspora/fields/target.rb
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
module Diaspora
|
||||||
|
module Fields
|
||||||
|
module Target
|
||||||
|
def self.included(model)
|
||||||
|
model.class_eval do
|
||||||
|
belongs_to :target, polymorphic: true
|
||||||
|
|
||||||
|
validates :target_id, uniqueness: {scope: %i(target_type author_id)}
|
||||||
|
validates :target, presence: true
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
@ -5,14 +5,10 @@ module Federated
|
||||||
include Diaspora::Federated::Base
|
include Diaspora::Federated::Base
|
||||||
include Diaspora::Fields::Guid
|
include Diaspora::Fields::Guid
|
||||||
include Diaspora::Fields::Author
|
include Diaspora::Fields::Author
|
||||||
|
include Diaspora::Fields::Target
|
||||||
|
|
||||||
include Diaspora::Relayable
|
include Diaspora::Relayable
|
||||||
|
|
||||||
belongs_to :target, polymorphic: true
|
|
||||||
|
|
||||||
alias_attribute :parent, :target
|
alias_attribute :parent, :target
|
||||||
|
|
||||||
validates :target_id, uniqueness: {scope: %i(target_type author_id)}
|
|
||||||
validates :target, presence: true # should be in relayable (pending on fixing Message)
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue