Django_Relation(Profile)

4886 단어 djangopythondjango

Profile Page 작성

  • 자연스러운 follow 흐름을 위한 회원 프로필 페이지 작성하기

url 작성

urlpatterns = [
    path('<username>/', views.profile, name='profile')
]
  • username을 사용할 때 주의사항
    • username을 맨 위로 올리면 문제가 발생한다
    • username은 문자열이고 아래에 url도 문자열들이기 때문에 다 맨 위 url에 걸린다.
    • variable routing이 문자열일 때 가장 아래로 내릴 것 !

View

def profile(request,username) :
    person = get_object_or_404(get_user_model(),username=username)
    context = {
        'person' : person,
    }
    return render(request, 'accounts/profile.html',context)

templates

  <h1>{{ person.username}}님의 프로필</h1>
  <hr>

  {% comment %} 작성한 게시글 {% endcomment %}
  <h2>{{person.username}}이 작성한 게시글</h2>

  {% for article in person.article_set.all  %}
    <p>{{article.title}}</p>
  {% endfor %}

  {% comment %} 작성한 댓글 {% endcomment %}
  <h2>{{person.username}}이 작성한 댓글</h2>
  {% for comment in person.comment_set.all %}
    <p>{{comment.content}}</p>
  
  {% endfor %}
  {% comment %} 좋아요를 누른 게시물  {% endcomment %}
  <h2>{{person.username}}이 좋아요를 누른 게시글</h2>
  {% for article in person.like_articles.all %}
    <p>{{article.title}}</p>
  {% endfor %}

좋은 웹페이지 즐겨찾기