Can you paste what you have in your index method?
> You should not be getting this error because we have already defined @pic
> as an empty array.
>
>


> def index
>     @users= User.all
>     @pic= []
>
>     @users.each do |p|
>     @pic<< Picture.where(:phrase_id => :route , :culture_id =>
> p.culture_id).first
>
>     end
>
>     @pic.compact!
>     send_data @pic.image, :type => 'image/png', :disposition => 'inline'
>
>   end
>
> On Tue, Jun 21, 2011 at 8:10 PM, joanne ta <[email protected]> wrote:
>
>>
>>
>> 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.
>>
>
>
>
> --
> 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.
>



-- 
--------------------------------

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.

Reply via email to