gpt4 book ai didi

python - 如何重定向到 Django 页面上的特定位置?

转载 作者:行者123 更新时间:2023-12-04 04:14:46 25 4
gpt4 key购买 nike

如果我通过 Django 在页面上列出帖子,并说我想让用户选择为帖子添加书签。我会创建一个 View “bookmark_post”,但是在函数完成后我必须将它们重定向到某个地方,对吗?我如何将他们重定向到他们在添加书签之前在页面上完全相同的位置,这样他们就不必在添加书签后一直向下滚动才能找到它?

我觉得我在某种程度上使这个问题过于复杂,或者我可能不必创建一个全新的 View 来为帖子添加书签。你有什么想法?再次感谢。

编辑:现在的主要问题:有没有办法在不重定向页面的情况下为帖子添加书签?我目前有一个 User 模型,其中有一个“书签”的 ManyToManyField。是否可以不使用 View 将书签添加到用户的个人资料?我觉得每次为某些内容添加书签时都必须等待页面重定向会很乏味,类似于如果每次“喜欢”某些内容时都必须等待页面重定向会很乏味。

最佳答案

重定向到页面可以使用 django 完成。
滚动到某个部分,单靠django是做不到的,但是,可以用人脑和django来完成,让我们看看滚动是如何工作的。

*{
padding:0;
margin: 0;
box-sizing: border-box;
}

.container {
height: 2000px;
background-color: green;
}

.btn {
text-decoration: none;
color: black;
width: 100px;
padding: 20px;
background: yellow;
}

.post{
width: 400px;
height: 150px;
background-color: blue;
margin-bottom: 10px;
border: 1px solid white;
}
<a class="btn" href="#post_11">Go to post 11</a>

<div class="container">
<div class="post" id="post_1"></div>
<div class="post" id="post_2"></div>
<div class="post" id="post_3"></div>
<div class="post" id="post_4"></div>
<div class="post" id="post_5"></div>
<div class="post" id="post_6"></div>
<div class="post" id="post_7"></div>
<div class="post" id="post_8"></div>
<div class="post" id="post_9"></div>
<div class="post" id="post_10"></div>
<div class="post" id="post_11"></div>
<div class="post" id="post_12"></div>
</div>


我们使用 a 标签通过 css id 滚动到特定元素,这意味着您希望为每个帖子创建一个动态 css id。最好使用 pk 来完成。说是 f"post_{post.pk}"
因此,您可以将用户重定向到 f www.example.com/#{post.pk}`,这将重定向并滚动到该特定帖子。

对于重定向,请使用 RedirectView

为防止刷新,请参阅此 ref

关于python - 如何重定向到 Django 页面上的特定位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60939092/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com