2010-08-13 53 views
0

我似乎被卡住了,我不确定哪个是最好的方向。Django jQuery查看用户问题

我在我的项目中有几个应用程序,并希望将三个视图合并成一个模板。

我有一个用户配置文件中,我想展示他的信息,最新的新闻提要,也是他照片

通过这个我正在使用的jQuery的标签

我有定义了我的三个选项卡,其中一个用于定位div,另外两个用于输入URL。

<a href="wall/recent">wall</a><a href="photos/recent">photos</a>

地址栏读取以下时,对用户个人资料 http://localhost:8000/profiles/profile_name/

在我views.pywallphotos如下所示

@login_required 
def index(request, template_name='wall/_index.html'): 
    photos = Photos.objects.filter(user=request.user).order_by('-id') 
    context = { 'photos': photos, } 

    return render_to_response(template_name, context, 
     context_instance=RequestContext(request)) 

但是,如果我再看看我的配置是罚款,但每当我切换到另一个用户配置文件,它似乎显示我的一些信息。

我知道request.user正在查看登录的用户,如何在地址栏中获取该用户并将其传递,以便显示正确的信息,即如果​​= john则显示johns照片,最近的墙项目等

回答

2

如果你已经有了一个urls.py这样的:

urlpatterns = patterns('', 
         (r'^profiles/(?P<prof_name>[A-Za-z0-9\-_]+)/$', 'appname.views.index')) 

那么你的观点可以修改代码如下:

@login_required 
def index(request, prof_name, template_name='wall/_index.html'): 
    photos = Photos.objects.filter(user__username=prof_name).order_by('-id') 
    context = { 'photos': photos, } 

    return render_to_response(template_name, context, 
     context_instance=RequestContext(request)) 

这样做的作用是将名称prof_name绑定到profiles/之后和最后的/之前的URL位中的任何值。鉴于URL /profiles/john/,您最终将调用index视图,其中prof_name设置为john

+0

嘿。谢谢你的信息,它的工作原理是这样的 – ApPeL 2010-08-13 13:51:36

+0

@ApPeL - 太棒了,谢谢你接受我的回答 - 你还介意吗? – 2010-08-13 14:05:06