• 
      

    Allow TemplateHook to be selective based on URL name

    Review Request #1629 — Created May 31, 2010 and submitted

    Information

    Djblets
    extensions

    Reviewers

    TemplateHook currently allows extensions to insert templates into our Django app.  So, for example, we have a hook called "base-scripts-post" which inserts templates on the base template.
    
    Now, while creating a TemplateHook, we can supply an optional apply_to list parameter which allows us to specify which view functions should really render the hook.  For example:
    
    TemplateHook(self, "base-scripts-post", "rbstats/rbstats_dlgs.html", ["dashboard"])
    
    Now rbstats_dlgs.html will only be rendered on the dashboard view function.
    
    I'm not entirely sure if my way of finding "func_name" is the way to go.  Open to suggestions.
    Manual.
    mike_conley
    chipx86
    1. 
        
    2. Hmm yeah, I'm not entirely sure what I think of using the function name. I'd key off the URL name actually (as defined in the urls.py files). It's possible for a single function to handle multiple URLs too (in the case of iPhone vs. main UI, for example), and we don't want to have collisions there.
    3. 
        
    mike_conley
    mike_conley
    chipx86
    1. Awesome! Glad you found something that works here.
    2. djblets/extensions/hooks.py (Diff revision 2)
       
       
       
       
      Should be on the same indentation level as the starting """.
    3. djblets/extensions/hooks.py (Diff revision 2)
       
       
      Is there a reason we need to include this here and not at the top of the file?
      1. No - good point.  I'll move it up top.
    4. djblets/extensions/middleware.py (Diff revision 2)
       
       
       
       
      Indentation should match the starting """.
    5. djblets/extensions/middleware.py (Diff revision 2)
       
       
      I'm not sure if we should be stashing it here or elsewhere, but what we do elsewhere is just request._djblets_whatever = value. 
      1. Alright, switched to request._djblets_extensions_kwargs.
    6. 
        
    mike_conley
    mike_conley
    chipx86
    1. Looks fine. I'll commit this when the parent changes go in.
    2. 
        
    mike_conley
    1. Patch available here:  http://github.com/mikeconley/djblets/commits/rr1629_selective_template_hook
    2. 
        
    mike_conley
    Review request changed
    chipx86
    1. Committed to extensions as 7e55fd5
    2.