我是Django的初學者。我需要設置一個網站,每個用戶都有一個個人資料頁面。我見過django管理員。用戶的配置文件頁面應該存儲一些只能由用戶編輯的信息。任何人都可以指出我怎麼可能?任何教程鏈接都會非常有幫助。另外,是否有任何django模塊,可用於設置用戶頁面。在Django中創建用戶個人資料頁面
回答
如果用戶創建GET
請求或在創建POST
請求時更新用戶的個人資料數據,您只需創建一個可供已認證用戶使用的視圖並返回配置文件編輯表單。
大部分工作已完成,因爲編輯模型的編號有generic views,例如UpdateView。您需要擴展的是檢查經過身份驗證的用戶併爲其提供您想要提供編輯的對象。這是MTV黑社會中的視圖組件,它提供編輯用戶個人資料的行爲 - Profile
模型將定義user profile,模板將以離散方式提供演示。
所以這裏的一些行爲,你扔一個簡單的解決方案:
from django.contrib.auth.decorators import login_required
from django.views.generic.detail import SingleObjectMixin
from django.views.generic import UpdateView
from django.utils.decorators import method_decorator
from myapp.models import Profile
class ProfileObjectMixin(SingleObjectMixin):
"""
Provides views with the current user's profile.
"""
model = Profile
def get_object(self):
"""Return's the current users profile."""
try:
return self.request.user.get_profile()
except Profile.DoesNotExist:
raise NotImplemented(
"What if the user doesn't have an associated profile?")
@method_decorator(login_required)
def dispatch(self, request, *args, **kwargs):
"""Ensures that only authenticated users can access the view."""
klass = ProfileObjectMixin
return super(klass, self).dispatch(request, *args, **kwargs)
class ProfileUpdateView(ProfileObjectMixin, UpdateView):
"""
A view that displays a form for editing a user's profile.
Uses a form dynamically created for the `Profile` model and
the default model's update template.
"""
pass # That's All Folks!
對文檔字符串使用雙引號以正確語法突出顯示 – glarrain 2012-09-14 17:54:32
謝謝,您的權利! – 2012-09-14 20:39:42
感謝你 - 非常有用!有兩件事我不得不改變以使其工作:而不是'@ login_required',你需要'@method_decorator(login_required)'(從'django.utils.decorators'導入)。而不是使用'BaseUpdateView'使用'UpdateView',否則會出現'render_to_response'丟失的錯誤。 – 2012-09-19 11:14:08
可以
- 創建用於存儲有關用戶
- 輪廓信息的另一個模型添加
AUTH_PROFILE_MODULE='yourprofileapp.ProfileModel'
到的settings.py 在配置文件編輯視圖中,只允許登錄的用戶編輯自己的配置文件
例如:
@login_required def edit_profile(request): ''' edit profile of logged in user i.e request.user '''
您也可以確保每當新用戶創建用戶的配置文件還使用Django的信號
創建從Django文檔閱讀storing additional information about users
- 1. 創建個人資料頁面
- 2. Django:建立用戶個人資料頁面?
- 3. WordPress爲用戶創建個人資料頁面
- 4. 每個用戶的Django個人資料頁面
- 5. 如何在Wordpress Multisite中創建個人資料頁面
- 6. 我需要讓用戶在飛行中創建個人資料頁面
- 7. Facebook個人資料頁面
- 8. 個人資料頁面PHP
- 9. 在他們的個人資料頁面上創建好友
- 10. WordPress的自動個人用戶個人資料頁面
- 11. 在MeteorJS中呈現用戶個人資料頁面
- 12. 如何在Trac中查看用戶個人資料頁面?
- 13. 個人資料頁面url喜歡facebook個人資料-php
- 14. 如何讓用戶在Rails中創建個人資料?
- 15. Jeditable登錄時僅在用戶個人資料頁面啓用
- 16. 動態創建用戶個人資料頁面 - httphandler?簡介供應商?
- 17. Drupal的7 - 在個人資料頁面
- 18. 查看個人資料頁面作爲django中的其他用戶
- 19. 在用戶註冊時創建一個自定義用戶個人資料頁面?
- 20. jQuery個人資料頁面>覆蓋
- 21. 谷歌+頁面vs個人資料
- 22. Twitter iOS個人資料頁面配置
- 23. Wordpress查看個人資料頁面
- 24. 頁面的個人資料ID likers
- 25. 個人資料頁面 - URL參數
- 26. 獲取Facebook頁面/個人資料URL
- 27. 如何在Swift中創建像Instagram的個人資料頁面的Instagram
- 28. 限制用戶到他們的個人資料頁面
- 29. php - 編輯用戶的個人資料頁面
- 30. 顯示用戶個人資料頁面PHP
你已經開發了什麼? – Dean 2012-01-28 15:50:28
我已經完成驗證。 – jvc 2012-01-28 16:02:23
http://stackoverflow.com/questions/8177289/django-profiles http://stackoverflow.com/questions/7313336/django-multiple-user-profiles-subprofiles http://stackoverflow.com/questions/3100521/django-registration-and-multiple-profiles http://stackoverflow.com/questions/4171083/is-there-a-django-app-that-can-manage-your-users-profiles http ://stackoverflow.com/questions/7173279/django-registration-and-django-profiles http://stackoverflow.com/questions/2654689/django-how-to-write-users-and-profiles-handling- in-best-way http://stackoverflow.com/questions/1910359/creating-a-extended-use – 2012-01-28 16:20:44