Skip to content

Instantly share code, notes, and snippets.

@roushkaman
Created December 13, 2012 17:50
Show Gist options
  • Save roushkaman/4278259 to your computer and use it in GitHub Desktop.
Save roushkaman/4278259 to your computer and use it in GitHub Desktop.
Есть парочка проблем и вопросов: 1.не могу заставить работать как хелпер 2.как делать исключение? 3.и где установить limit, так как везде он получаеться не определенным методом?
def self.similar(current_product)
semilars = self.where(:part_id => current_product.part_id, :model_id => current_product.model_id)
if semilars.count < 5
semilars |= self.where(:model_id => current_product.model_id)
if semilars.count < 5
sem = semilars | self.all
else
semilars
end
end
end
def show
show! { @silimiar_products = ProductDecorator.decorate(Product.similar(@product)) }
end
@roushkaman
Copy link
Author

не везде конечно, если я в методе self.similar его буду использовать, то для каждой строки он будет работать, а не для общего результата

@ka8725
Copy link

ka8725 commented Dec 13, 2012

Исключение:

.where("id is not ?", @product.id)

Ограничение по кол-ву:

.limit(5 - res.count) # для начала лучше сделать res = []

@ka8725
Copy link

ka8725 commented Dec 13, 2012

От двойной вложенности if избавься и 5 сделай константой. Вынеси ее в Product

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment