I want to get user.pk from request (for logged in user) in order to avoid additional DB queries.
In views there is incoming request variable. How to get this request somewhere else (not in views)? Directly importing HttpRequest does not help, because HttpRequest gets user object because of middleware modification. How can I get this 'modified' HttpRequest with user object? What do I need to import?
EDIT:
I want to implement customized user address, so user may have 2 types of addresses, like mysite.com/username or mysite.com/id123, so one link from navigation menu (My page) is dynamic. For the creation of navigation menu I use django-sitetree, where I want to do something like:
from sitetree.sitetreeapp import register_items_hook
def my_items_processor(tree_items, tree_sender):
# get somehow `request`
if tree_sender == 'menu.children':
for item in tree_items:
if request.user.username:
item.url = request.user.username
else:
item.url = request.user.pk
return tree_items