問題は、このエラーが発生したため、URLconf がボードの名前をキャプチャして views.py に処理できないことだと思います
NoReverseMatch at /profile/
Reverse for 'Boat' with arguments '(u"Jimmy's Board",)' and keyword arguments '{}' not found
Error during template rendering
In template C:\o\mysite\pet\templates\profile.html, error at line 19
18 {% for b in board %}
19 <li><a href ="{% url world:Boat b.name %}">{{ b.name }}</li>
20 {% endfor %}
これは私のプロフィールです。
<h4>My Boards</h4>
{% if board %}
<ul>
{% for b in board %}
<li><a href ="{% url world:Boat b.name %}">{{ b.name }}</li>
{% endfor %}
</ul>
{% endif %}
私の URLConf:
url(
r'^board/(?P<name>\w+)/$',
'pet.views.Boat',
name ='Boat'
),
)
私のviews.py
def Boat(request ,name=""):
if not request.user.is_authenticated():
return HttpResponseRedirect(reverse('world:LoginRequest'))
if name:
board = Board.objects.get(name=name)
picture = Picture.objects.filter(board=board)
return render(request,'boat.html',{'picture':picture})
return render(request,'boat.html',{'picture':picture})
def Profile(request):
if not request.user.is_authenticated():
return HttpResponseRedirect(reverse('world:LoginRequest'))
board = Board.objects.filter(user=request.user)
person = Person.objects.get(user=request.user)
return render(request,'profile.html',{'board':board ,'person':person})
ボード名を views.py に処理するように URLconf を修正するにはどうすればよいですか?
私のモデル.py
class Board(models.Model):
user = models.ForeignKey(User)
name = models.CharField(max_length=100)
def __unicode__(self):
return self.name