J'ai ces deux morceaux de code, et je les trouve laids. Comment puis-je les modifier ?
1
do_withs = Dowith.where(:friend_id => current_user.id)
@doweets = do_withs.collect { |f| f.doweet_id }
@doweets = @doweets.collect { |f| Doweet.find((F)) }
@doweets = @doweets + current_user.doweets
@doweets.flatten!
@doweets.sort! { |a,b| a.date <=> b.date }
2
@current_user_doweets = current_user.doweets.limit(10)
@friendships = Friendship.where(:friend_id => current_user.id, :status => true)
@friends = @friendships.collect { |f| User.find(f.user_id) }
@friends_doweets = @friends.collect(&:doweets)
@doweets = @current_user_doweets + @friends_doweets
@doweets.flatten!
@doweets.sort! { |a,b| b.created_at <=> a.created_at }
modèles :
class Doweet < ActiveRecord::Base
has_many :comments
has_many :likes
has_many :dowiths
belongs_to :user
end
class Dowith < ActiveRecord::Base
belongs_to :doweet
end
class User < ActiveRecord::Base
has_many :doweets
has_many :friendships
end
class Friendship < ActiveRecord::Base
belongs_to :user
end