ユーザーが他のユーザーをクリックして自分の投稿を編集せずにプロフィールにアクセスしてもらいたい。ここ他のユーザープロフィールを表示
def Profil(request, username):
if not request.user.is_authenticated():
return render(request, 'blog/visitor.html')
else:
u = User.objects.get(username=username)
user = request.user
posts = Post.objects.filter(user=request.user)
context = {'user': user, 'user_url':u,'posts': posts}
return render(request, 'blog/profil.html', context)
そして、私のIndexビュー
def IndexView(request):
if request.user.is_authenticated():
base_template_name = 'blog/base.html'
else:
base_template_name = 'blog/visitor.html'
posts = Post.objects.all()
return render(request, 'blog/index.html',
{'posts':posts, 'base_template_name':base_template_name})
(他のソリューションが離れてこのありますか?)
私urls.py
:ここ は私PROFIL図でありますurl(r'^(?P<username>\w+)/$', views.Profil, name = 'profil'),
およびli profil.htmlへのindex.htmlからのNKは次のようになります。
<a href="{% url 'blog:profil' user.username %}">{{post.user.username }}</a>
私はそれは私がクリックしたユーザではなくログインよ、現在のユーザーに渡すリンクをクリックしたときこれで問題があります管理者と、それは
ログインおよび上アラさんのプロフィールを見てみたい:
私はそれがURLこの中で示しクリック:
http://127.0.0.1:8000/blog/imedadmin/これは 'imedadmin'の代わりに 'Ala'とされています。
あなたはプロファイルリンクのログインユーザーのユーザー名を使用しています: '{%url 'blog:profil' user.username%}'。 'user'を、プロファイルをリンクしたい実際のユーザに置き換えてください。 – xyres
私はそれを何と置き換えるのですか? – Imed
リンクにユーザーの名前が表示されていますか?あなたは完全な '...'コードを表示できますか?または、インデックスビューを表示します。 – xyres