On Jan 7, 9:42 am, Timothy Farrell <tfarr...@swgen.com> wrote:
> The first argument in your cache decorator ( request.env.path_info ) is the 
> key that the cache system uses to determine uniqueness.  If you have a form 
> in your view, then you need to insert all levels of uniqueness into this key. 
>  Perhaps something like this...cachekey = 
> str(request.env.path_info)+str(dict(request.vars))+str(request.args) 
> @cache(cachekey,time_expire=20,cache_model=cache.disk)would do the trick.  If 
> the page is restricted based on authentication, you'll also need to include 
> some sort of unique user identification in the cachekey variable.
> -tim
> voltron wrote:Thanks Massimo, The web2PY generic template is not displayed 
> anymore. BUT I have a more serious problem, forms rendered in the cached view 
> function are not validated and do not work anymore. Any ideas? Thanks On Jan 
> 6, 5:55 pm, mdipierro<mdipie...@cs.depaul.edu>wrote:@voltron, ignore my 
> original response. Tim pointed out the right issue. Correct your code as 
> @cache(request.env.path_info,time_expire=20,cache_model=cache.disk) def 
> index():     """ This action renders the feedback form """     response.view 
> = "parents_normal_form.html"     ....     return response.render(dict(....))  
> ### this renders the template before caching. Massimo On Jan 6, 10:53 am, 
> mdipierro<mdipie...@cs.depaul.edu>wrote:instead of    return dict()use    
> return response.render(dict())This is explained 
> inhttp://mdp.cti.depaul.edu/examples/default/examplesMassimoOn Jan 6, 10:45 
> am, Timothy Farrell<tfarr...@swgen.com>wrote:So when you use the cache 
> decorator on a controller, it only caches the controller output...not the 
> rendered view? If someone wanted to cache the rendered view, how would they 
> do that? -tim mdipierro wrote:Because you override the view in the action 
> which is not executed when cached. To fix it, outside the index function add 
> if request.function=='index': response.view = "parents_normal_form.html" 
> Massimo On Jan 6, 10:07 am, voltron<nhy...@googlemail.com>wrote:I used disk 
> and RAM, like I mentioned above, no errors except that it shows web2pys 
> generic template instead of the one I declared On Jan 6, 3:49 pm, 
> mdipierro<mdipie...@cs.depaul.edu>wrote:Do you get the error using cache.ram 
> instead of cache.disk? How does the problem manifest? Do you get an empty 
> page? An error? Can you add a print statement to check whether the controller 
> is executed when you see the error?Why are you using cache.disk over 
> cache.ram? The former involved picklying so the latter is much 
> faster.massimoOn Jan 6, 8:09 am, voltron<nhy...@googlemail.com>wrote:Here is 
> an 
> example:@cache(request.env.path_info,time_expire=20,cache_model=cache.disk) 
> def index(): """ This action renders the feedback form """ response.view = 
> "parents_normal_form.html"page_title = T("Feedback") page_content = """On Jan 
> 6, 3:07 pm, mdipierro<mdipie...@cs.depaul.edu>wrote:Can you provide an 
> example of how you caching a page so that I can try reproduce this?MassimoOn 
> Jan 6, 6:19 am, voltron<nhy...@googlemail.com>wrote:I have a bad problem at 
> the moment, all the views that use cacheing sometimes default to web2py 
> generic template sporadically then are then correct after a refresh. I set 
> the template in the views as such# Exampleresponse.view = 
> "accounts/register.html"Is there some workaround for this ?Thanks-- Timothy 
> Farrell<tfarr...@swgen.com>Computer Guy Statewide General Insurance Agency 
> (www.swgen.com)-- Timothy Farrell<tfarr...@swgen.com>Computer Guy Statewide 
> General Insurance Agency (www.swgen.com)
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"web2py Web Framework" group.
To post to this group, send email to web2py@googlegroups.com
To unsubscribe from this group, send email to 
web2py+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/web2py?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to