Ric*_*rdd 1 django url username
我想在我的网站上实现一个简单友好的地址系统.
我在想的是当用户登录时,他的用户名将显示在地址栏中.
- www.example.com/username 1(主页配置文件)
- www.example.com/username 1/about /
- www.example.com/username 1/gallery /
- www.example.com/username 2(主页配置文件)
- www.example.com/username 2/about /
- www.example.com/username 2/gallery /
此外,如果有人输入地址www.example.com/username1,将显示user1的个人资料.
我已经使用Django-Allauth实现了一个注册/登录系统
MYSITE/urls.py
url(r'^accounts/', include('allauth.urls')),
Run Code Online (Sandbox Code Playgroud)
家用/ urls.py
url(r'^$', views.index),
Run Code Online (Sandbox Code Playgroud)
家用/ views.py
def index(request):
return render_to_response('home/index.html', context_instance=RequestContext(request))
Run Code Online (Sandbox Code Playgroud)
我尝试遵循一些示例,例如面向问题的用户配置文件网址方案,例如django中的example.com/username
但我还没有工作呢.我不明白该怎么做:(
请给一些建议.
添加以下网址作为以下内容的最后一项mySite/urls.py
:
urlpatterns = patterns('',
...
url(r'^(?P<username>\w+)/', include('userapp.urls')),
)
Run Code Online (Sandbox Code Playgroud)
然后username
参数将传递给您的视图userapp
:
userapp/urls.py
:
from userapp import views
urlpatterns = patterns('',
url(r'^$', views.profile, name='user_profile'),
url(r'^about/$', views.about, name='user_about'),
url(r'^gallery/$', views.gallery, name='user_gallery'),
)
Run Code Online (Sandbox Code Playgroud)
userapp/views.py
:
def profile(request, username):
user = get_object_or_404(User, username=username)
return render(request, 'userapp/profile.html', {'profile_user': user})
def about(request, username):
...
def gallery(request, username):
...
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1468 次 |
最近记录: |