0
0
Fork 0

Rename :poll to :preloadable_poll and :owned_poll to :poll on Status (#10401)

Also, fix some n+1 queries

Resolve #10365
This commit is contained in:
Eugen Rochko 2019-03-28 04:44:59 +01:00 committed by GitHub
parent f46f67d984
commit f1bc90ab50
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
15 changed files with 45 additions and 43 deletions

View file

@ -29,7 +29,7 @@ class ActivityPub::NoteSerializer < ActivityPub::Serializer
end
def type
object.poll ? 'Question' : 'Note'
object.preloadable_poll ? 'Question' : 'Note'
end
def summary
@ -125,29 +125,29 @@ class ActivityPub::NoteSerializer < ActivityPub::Serializer
end
def poll_options
object.poll.loaded_options
object.preloadable_poll.loaded_options
end
def poll_and_multiple?
object.poll&.multiple?
object.preloadable_poll&.multiple?
end
def poll_and_not_multiple?
object.poll && !object.poll.multiple?
object.preloadable_poll && !object.preloadable_poll.multiple?
end
def closed
object.poll.expires_at.iso8601
object.preloadable_poll.expires_at.iso8601
end
alias end_time closed
def poll_and_expires?
object.poll&.expires_at&.present?
object.preloadable_poll&.expires_at&.present?
end
def poll_and_expired?
object.poll&.expired?
object.preloadable_poll&.expired?
end
class MediaAttachmentSerializer < ActivityPub::Serializer

View file

@ -6,7 +6,7 @@ class ActivityPub::UpdatePollSerializer < ActivityPub::Serializer
has_one :object, serializer: ActivityPub::NoteSerializer
def id
[ActivityPub::TagManager.instance.uri_for(object), '#updates/', object.poll.updated_at.to_i].join
[ActivityPub::TagManager.instance.uri_for(object), '#updates/', object.preloadable_poll.updated_at.to_i].join
end
def type

View file

@ -21,7 +21,7 @@ class REST::StatusSerializer < ActiveModel::Serializer
has_many :emojis, serializer: REST::CustomEmojiSerializer
has_one :preview_card, key: :card, serializer: REST::PreviewCardSerializer
has_one :poll, serializer: REST::PollSerializer
has_one :preloadable_poll, key: :poll, serializer: REST::PollSerializer
def id
object.id.to_s