2011-12-12 55 views
-2

可能重複:
Putting a django login form on every page如何添加登錄在main_page Django的

我怎麼能在Django添加日誌,在我main_page?讓我們說,在我的main_page我只是想登錄。例如,在我的www.example.com中,我爲訪問該網站的任何用戶提供了登錄部門。

這裏是我的urls.py

urlpatterns = patterns('', 
    (r'^$', main_page), 
    (r'^product/$', product_save), 
    (r'^reserve/$', reserve_page), 
    (r'^product/select/$', product_select), 
    (r'^book/$', book_save), 
    (r'^api/', include('bookproj.api.urls')), 
    (r'^media/(?P<path>.*)$', 'django.views.static.serve', 
     {'document_root': os.path.join(settings.BASE_DIR, 'media'), 
     'show_indexes': True}), 
    (r'^login/$', 'django.contrib.auth.views.login'),) 

我views.py:

def main_page(request): 
    product = Product.objects.all() 

    template = get_template('main_page.html') 
    variables = RequestContext(request, { 'product': product}) 
    return render_to_response(
     'main_page.html', variables 
    ) 

在測井在我剛鍵入www.example.com/login,這條線指導我們的登錄方法:

(r'^login/$', 'django.contrib.auth.views.login') 

但它直接給我們另一個頁面打電話給login.html。我怎麼能這樣做,在main_page.html已經登錄,我不能去www.example.com/login登錄?

有沒有人有關於我的問題的想法?我可以添加其他視圖或修改我的main_page視圖嗎?

感謝...

+0

http://stackoverflow.com/questions/2734055/putting-a-django-login-form-on-everypage – juankysmith

回答

2

有過這個問題,我覺得這裏的代碼不正是你需要
http://www.nerdydork.com/django-login-form-on-every-page.html
解釋如何把登錄在每一頁上(通過將其傳遞到基本模板)
如果你想它只是在主頁......將它傳遞給主頁而不是基本模板 它是一個教程,解釋如何構建這樣的任務。希望它有幫助

1

你可以在你的函數定義之前使用django @login_required提供的登錄所需的裝飾器。上面的鏈接將引導您進入文檔示例,從中您應該能夠理清您的問題。