问答详情
源自:-

关于4-5文章详情页跳转的问题

路由 

path('detail/<int:article_id>', app01.views.get_detail_page)

index 配置

<div class="col-md-9" role="main">
    <div class="body-main">
        {% for article in article_list %}
        <div>
            <h2><a href="/app01/detail/{{article.article_id}}">{{article.title}}</a></h2>
            <p>{{article.content}}</p>
        </div>
        {% endfor %}
    </div>
</div>

views

def get_detail_page(request,article_id):
    all_article  =Article.objects.all()
    for article in  all_article:
        if article.arcticle_id == article_id:
            curr_article=article
            break
    return render(request,'app01/detail.html',
                   {
                       'curr_article':curr_article
                   })

直接访问文章详情页是访问正常

[15/Apr/2020 14:53:18] "GET /app01/detail/4 HTTP/1.1" 200 1344

但在index首页跳转没有获取到id

http://img1.mukewang.com/5e96b06a0001dab011060242.jpg

http://img1.mukewang.com/5e96b08e00013d7f08270320.jpg

提问者:weixin_慕先生4382207 2020-04-15 14:58

个回答

  • 勇往直前3
    2021-02-01 11:52:48

    if article.arcticle_id == article_id:

    views中这句

    article.arcticle_id

    注意单词拼写错误

  • 勇往直前3
    2021-02-01 11:45:55

    输入 python manage.py runserver 后

    控制台会显示以下内容:

    Watching for file changes with StatReloader

    Performing system checks...

    ......

    Django version 3.1.5, using settings 'django_introduction.settings'

    Starting development server at http://127.0.0.1:8000/

    Quit the server with CTRL-BREAK.

    加粗部分显示Django的版本,不同版本写法不同。

    课程中用的2.x,

    如果是3.x,urls.py文件中

    detail/<int:article_id>的后面添加/
    如下所示
    path('detail/<int:article_id>/', app01.views.get_detail_page),