On Tue, Jun 21, 2011 at 10:27 AM, Chirag Singhal
<[email protected]>wrote:

> Oh yes... sorry about that.
> I assumed that you will find picture for every query.
>
> You can try this instead:
> def index
>   @users= User.all
>   @pic = []
>
>   @users.each do |p|
>     @pic << Picture.where(:phrase_id => :route , :culture_id =>
> p.culture_id).limit(1)
>   end
>   @pic.compact!
> end
>
> by calling compact! on the array, we will eliminate all nil object.
>
> On another note, are you sure, this is what you want to do? If you have 100
> users, it will fire 100 sql queries which is not good.
>
> Yes i think i have that problem as well because if i remove  "@users.each
do |p|    "
and then it will cause undefined method of culture_id..
plus when i call @pic.compact! , it gives me

NoMethodError (You have a nil object when you didn't expect it!
You might have expected an instance of Array.
The error occurred while evaluating nil.compact!):
  app/controllers/patients_controller.rb:29:in `index'

what is mean? cuz i want to display picture on the browser too...

please help... thank you very much

Joanne

>
>
> On Tue, Jun 21, 2011 at 7:42 PM, joanne ta <[email protected]> wrote:
>
>> it does not work, it is complaining other error
>>
>> NoMethodError (undefined method `image' for [nil]:Array):
>>   app/controllers/patients_controller.rb:27:in `block in index'
>>   app/controllers/patients_controller.rb:25:in `each'
>>   app/controllers/patients_controller.rb:25:in `index'
>>
>>
>>
>> On Tue, Jun 21, 2011 at 9:57 AM, Chirag Singhal <[email protected]
>> > wrote:
>>
>>> Your index action should be something like this:
>>>
>>> def index
>>>   @users= User.all
>>>   @pic = []
>>>
>>>   @users.each do |p|
>>>     @pic << Picture.where(:phrase_id => :route , :culture_id =>
>>> p.culture_id).limit(1)
>>>   end
>>> end
>>>
>>> --
>>> You received this message because you are subscribed to the Google Groups
>>> "Ruby on Rails: Talk" group.
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msg/rubyonrails-talk/-/B259TKI0970J.
>>>
>>> To post to this group, send email to [email protected].
>>> To unsubscribe from this group, send email to
>>> [email protected].
>>> For more options, visit this group at
>>> http://groups.google.com/group/rubyonrails-talk?hl=en.
>>>
>>
>>
>>
>> --
>> --------------------------------
>>
>> Thank you,
>>
>> Yen
>>
>>
>>  --
>> You received this message because you are subscribed to the Google Groups
>> "Ruby on Rails: Talk" group.
>> To post to this group, send email to [email protected].
>> To unsubscribe from this group, send email to
>> [email protected].
>> For more options, visit this group at
>> http://groups.google.com/group/rubyonrails-talk?hl=en.
>>
>
>
>
> --
> Chirag
> http://sumeruonrails.com
>
>  --
> You received this message because you are subscribed to the Google Groups
> "Ruby on Rails: Talk" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group at
> http://groups.google.com/group/rubyonrails-talk?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to