Skip to content
Extraits de code Groupes Projets
Valider 51083e96 rédigé par Raphael's avatar Raphael
Parcourir les fichiers

Another 50 passes in mysql

parent 0c67e271
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -6,7 +6,7 @@ class Aspect < ActiveRecord::Base
belongs_to :user
has_many :aspect_memberships
has_many :members, :through => :aspect_memberships, :class_name => 'Person'
has_many :contacts, :through => :aspect_memberships
has_and_belongs_to_many :posts
......
......@@ -24,7 +24,7 @@ class Person < ActiveRecord::Base
diaspora_handle.downcase!
end
has_many :aspect_memberships
has_many :contacts
belongs_to :owner, :class_name => 'User'
......
......@@ -158,7 +158,7 @@ class User < ActiveRecord::Base
if aspect_ids == "all" || aspect_ids == :all
self.aspects
else
aspect_ids = aspect_ids.to_a
aspect_ids = [aspect_ids] unless aspect_ids.is_a?(Array)
aspects.where(:id => aspect_ids)
end
end
......@@ -167,8 +167,14 @@ class User < ActiveRecord::Base
#send to the aspects
target_aspect_ids = aspects.map {|a| a.id}
target_people = Person.includes(:aspect_memberships).where(
"aspect_memberships.aspect_id" => target_aspect_ids, "aspect_memberships.pending" => false)
#target_contacts = Contact.where(:user_id => self.id, "aspect_memberships
target_people = Person.joins(
:contacts => :aspect_memberships
).where(:aspect_memberships => {:aspect_id => target_aspect_ids})
#target_people = Person.includes(:contacts).where(
# "contacts.user_id" => self.id,
# "contacts.aspect_memberships.aspect_id" => target_aspect_ids,
# "contacts.pending" => false)
post_to_hub(post) if post.respond_to?(:public) && post.public
push_to_people(post, target_people)
......
......@@ -25,10 +25,8 @@ describe User do
end
it 'saves post into visible post ids' do
pp user.raw_visible_posts
proc {
user.add_to_streams(@post, @aspect_ids)
pp user.raw_visible_posts
}.should change(user.raw_visible_posts, :count).by(1)
user.reload.raw_visible_posts.should include @post
end
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter