如何使用django让用户在网页中可以让用户向我们提供反馈
时间: 2023-12-11 10:05:05 浏览: 38
你可以通过以下步骤在 Django 中添加用户反馈表单:
1. 创建一个 Feedback 模型
```python
from django.db import models
class Feedback(models.Model):
name = models.CharField(max_length=100)
email = models.EmailField()
message = models.TextField()
created_at = models.DateTimeField(auto_now_add=True)
```
2. 创建一个 FeedbackForm 表单,它将基于 Feedback 模型构建
```python
from django import forms
from .models import Feedback
class FeedbackForm(forms.ModelForm):
class Meta:
model = Feedback
fields = ('name', 'email', 'message')
```
3. 在你的视图中处理表单提交
```python
from django.shortcuts import render
from .forms import FeedbackForm
def feedback(request):
if request.method == 'POST':
form = FeedbackForm(request.POST)
if form.is_valid():
form.save()
return render(request, 'feedback/success.html')
else:
form = FeedbackForm()
return render(request, 'feedback/feedback.html', {'form': form})
```
4. 创建一个 feedback.html 模板来渲染表单
```html
{% extends 'base.html' %}
{% block content %}
<h2>Feedback</h2>
<form method="post">
{% csrf_token %}
{{ form.as_p }}
<button type="submit">Submit</button>
</form>
{% endblock %}
```
5. 创建一个 success.html 模板,以便在表单成功提交后向用户显示消息
```html
{% extends 'base.html' %}
{% block content %}
<h2>Thank you for your feedback!</h2>
{% endblock %}
```
6. 将路由添加到 urls.py 文件中
```python
from django.urls import path
from .views import feedback
urlpatterns = [
path('feedback/', feedback, name='feedback'),
]
```
现在,当用户访问 /feedback 页面时,他们将看到一个表单,可以输入他们的姓名、电子邮件和消息,并将消息发送给你。