2

user.usernameforeignKey がセッション ユーザー名に等しいエントリのリストを表示したいと思います。セッション ユーザーに関連する特定のデータのみを表示したい。

models.py:

from django.db import models

class User(models.Model):
    username = models.CharField(max_length=10)
    email = models.EmailField(verbose_name='e-mail')
    date_signed = models.DateTimeField('date signed')

class ezMap(models.Model):
    map_name = models.CharField(max_length=50, )
    user = models.ForeignKey(User)

ビュー.py:

from django.shortcuts import *
from ezmapping.models import *

def listEzMap(request):
    #really not sure how to do it...
    username = request.session['username']
    user_list = ezMap.objects.get(map_name = username)
    return render_to_response("map_list.html", {'user_list': user_list})

map_list.html テンプレート:

{% extends "base.html" %}
{% block content %}
<div class="list">
  <h2> Map list </h2>
    {% for object in user_list %}
<li>{{ object.map_name }}</li>
{% endfor %}
</div>
{% endblock %}

ご協力ありがとうございます。

4

2 に答える 2

1

ビュー.py:

def listEzMap(request):
    user_list = ezMap.objects.filter(user=request.user)
    return render_to_response("map_list.html", {'user_list': user_list})
于 2013-02-01T15:29:42.330 に答える
1

request as からログインしているユーザーにいつでもアクセスでき、user = request.userそのユーザー情報を使用してユーザーごとに決定を下すことができます。

user = request.user
user_list = ezMap.objects.get(map_name = user.username)

コメントで言及されているように、django認証システムを確認する必要があります。dm03514

于 2013-02-01T17:15:32.723 に答える