ruby on rails - Methods for ActiveRecord that not implies database or convert into Hash/Array -


i have model foo , in index action do:

@foos = foo.all  

and now, on view want know if @foos contain record whit foo.id = whatever

one method of @foos.exists?(id: whatever), method implies bd query , want avoid this.

other method @foos.collect(&:id).include?(whatever) implies conversion of @foos array, case avoid.

there ways accomplish it?

thanks in advance

update

i want object not know if exists, sorry bad explanation.

you can use enumerable#any? check if value exists in array of results:

@foos.any? { |foo| foo.id == whatever } 

this check performed on result array without hitting database again , without converting array structure.

update

if want object returned, use enumerable#find, this:

@foos.find { |foo| foo.id == whatever } 

this return first occurrence foo.id == whatever.


Comments

Popular posts from this blog

google chrome - Developer tools - How to inspect the elements which are added momentarily (by JQuery)? -

angularjs - Showing an empty as first option in select tag -

php - Cloud9 cloud IDE and CakePHP -