Skip to content
  • What is difference between <int:pk> and <pk> {SOF}
    • <pk> 보다는 <int:pk>를 선호하는 편이 좋다. django urlpatterns and url convert에 따르면 타입을 붙이면 언제나 string으로 들어오는 URL 요청으로부터 regex를 사용하여 파싱을 하게 된다고 한다. 그 결과, 구체적인 url patterns케이스를 작성할 수 있으며, 심지어 같은 path의 계층 일부에 타입을 부과하면 장고가 혼동할 여지를 줄일 수 있다.
  • Build a blog using django {YT}

    • url_patterns > path 에 대하여 라우트를 줄 때 <int:pk>를 줄 수 있다고 했다.
    • 그말은 곧 인자를 하나 더 받겠다는 의미이다. 따라서 장고 템플릿에서 {% url <name> [args] %}의 규칙에 따라 인자를 추가하여야 한다. pk에는 object.id인듯?
    # blog > urls.py
    urlpatterns = [
        path("<int:pk>/", DetailArticleView.as_view(), name="detail_article"),
        ...
    ]
    
    # blog > view.py
    class DetailArticleView(DetailView):
        model = Article
        template_name = "blog/detail_article.html"
    
<!-- blog > templates > blog > index.html -->
{% for object in object_list %}
    ...
    <a href="{% url 'detail_article' object.id %}" class="btn btn-primary">Read More</a>
{% endfor %}

include#

django.urls.include(module, namespace)