1. 程式人生 > >28、Django實戰第28天:個人信息展示

28、Django實戰第28天:個人信息展示

{} 情況 區別 htm quest 繼承 頁面 enter AC

從今天開始,我來完成個人中心部分,前端頁面如下

技術分享圖片

1、瀏覽這些頁面可以發現,它們和base.html是有區別的,因此,它們需要新建一個模板usercenter-base.html

2、把usercenter-info.html的內容拷貝到usercenter-base.html,用block把會不同的部分包起來,然後替換靜態文件

3、在head部分加上一個用於樣式的:{% block custom_css %}{% endblock %}

4、在body最後加上一個用於js的:{% block custom_js %}{% endblock %}

5、編輯usercenter-info.html,繼承usercenter-base.html

技術分享圖片

6、編輯users.views.py

...
from utils.mixin_utils import LoginRequiredMixin

class UserInfoView(LoginRequiredMixin, View):
    def get(self, request):
        return render(request, ‘usercenter-info.html‘, {})

7、配置訪問url,我們把個人中心的所有url都配置在user下面,首先在根url配置一條

...

urlpatterns = [

    ...    
    # 個人中心url配置
    url(r‘user/‘, include(‘users.urls‘, namespace=‘user‘)),

]

在users下面創建urls.py

from django.conf.urls import url
from .views import UserInfoView

urlpatterns = [
    url(r‘info/$‘, UserInfoView.as_view(), name=‘user_info‘),
]

8、把進入個人中心的url連接修改

技術分享圖片

9、編輯usercenter-info.html,把信息動態展示出來

技術分享圖片

因為數據庫設置的生日和手機號默認是空的,這樣會顯示None,為了避免這種情況發生,django為我們提供了一種方法

技術分享圖片

技術分享圖片

28、Django實戰第28天:個人信息展示