django点击按钮跳转对应页面
时间: 2023-09-13 12:09:58 浏览: 416
通过按钮实现网页跳转
要在 Django 中实现按钮点击后跳转到对应的页面,你可以按照以下步骤进行:
1. 在模板中创建一个 HTML 表单,表单包含一个按钮和一个隐藏的输入框。输入框的值可以设置为你想要跳转到的页面的 URL。
```html
<form method="post">
{% csrf_token %}
<input type="hidden" name="next" value="{% url 'app_name:view_name' %}">
<button type="submit">跳转</button>
</form>
```
在这个表单中,我们将视图的 URL 存储在一个名为 "next" 的隐藏输入框中。这个值会在表单被提交时发送到服务器端。
2. 在视图函数中,获取输入框中的 URL 值,并使用 Django 的重定向函数将用户重定向到该页面。
```python
from django.shortcuts import redirect
def my_view(request):
if request.method == 'POST':
next_url = request.POST.get('next', '') # 获取输入框中的 URL 值
return redirect(next_url) # 重定向到该页面
return render(request, 'my_template.html')
```
在这个视图函数中,我们首先检查请求方法是否为 POST。如果是 POST 方法,我们就从请求中获取输入框中的 URL 值。然后,我们使用 Django 的 `redirect` 函数将用户重定向到该页面。如果请求方法不是 POST,我们就渲染模板并返回 HTML 页面。
3. 在 URL 配置中,将视图函数映射到一个 URL。
```python
from django.urls import path
from . import views
urlpatterns = [
path('my_view/', views.my_view, name='my_view'),
]
```
在这个 URL 配置中,我们将 `my_view` 函数映射到 `/my_view/` URL 上,并给这个 URL 取了一个名字 `my_view`。
现在,当用户点击跳转按钮时,表单会被提交到服务器端,服务器端会将用户重定向到输入框中指定的 URL。
阅读全文