On Dec 5, 3:37 pm, Jonathan Rochkind <[EMAIL PROTECTED]
s.net> wrote:
> There's a part of my code that really needs to get the latest value from
> the database.
>
> But AR in Rails 2 seems to have some kind of caching, so if I execute a
> Model.find statement with the exact same arguments, it won't go to the
> database, it'll just return the same value it got last time?

Actually, that's only true during a single action (request-response
cycle). Once your action is over, the cache is cleared.


> At least that's the only way I can explain the weird behavior I am
> seeing. This seems like rather an evil thing to turn on by default, but
> at any rate, if I'm right about what's going on... how do I disable this
> for an individual Model.find command, where I really need to get fresh
> data?

You should always be getting new data.  If you need to get fresh data
within an action,
you can reload the model.

@order.reload

or

@order.products(true)  # reloads associated products collection

> Jonathan
> --
> Posted viahttp://www.ruby-forum.com/.

Hope that helps?

Jeff

www.purpleworkshops.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
-~----------~----~----~----~------~----~------~--~---

Reply via email to