学习django。我有一个问题。我已经做了反馈表,我需要重定向用户到同一页后,反馈表确认。下面是代码:
- 型号. py**
class Feedback(models.Model):
title = models.CharField(max_length=255)
text = models.TextField(max_length=5000)
user_name = models.CharField(max_length=255)
user_lastname = models.CharField(max_length=255)
email = models.EmailField(max_length=255)
send_time = models.DateTimeField(auto_now_add=True)
update_time = models.DateTimeField(auto_now=True)
def get_absolute_url(self):
return
- 网址. py**
url(r'^feedback$',views.FeedbackSendForm.as_view(), name='feedback'),
- 查看次数. py**
class FeedbackSendForm(CreateView):
model = Feedback
fields = [
'title',
'text',
'user_name',
'user_lastname',
'email',
]
template_name = 'feedback.html'
- 反馈. html**
<form method="post">
{% csrf_token %}
{% for field in form %}
<span class="text-danger">{{ field.errors }}</span>
<div>
<label class="control-label">{{ field.label }}</label>
{{ field }}
</div>
{% endfor %}
<button type="submit">Submit</button>
</form>
有什么想法吗?请帮忙。先谢了
3条答案
按热度按时间a64a0gku1#
如果要覆盖模型的
get_absolute_url
,可以使用以下代码:任何
Feedback
对象的绝对url都是视图FeedbackSendForm
,这是通过将视图名feedback
传递给reverse
来指定的。这就是你想要的吗?
smdnsysy2#
创建视图示例:
views.py
:希望这个有用。
更多信息:https://ccbv.co.uk/projects/Django/1.5/django.views.generic.edit/CreateView/
70gysomp3#
如果我们在模型类中定义get_absolute_url,那么在发布表单时,我们可以将action标记保留为空,如下所示
在本例中,现在它在我们的模型类中搜索get_absolute_url,定义如下
定义获取绝对URL(自身):返回反向("post_detail",kwargs ={" pk ":)self.pk})
在更新或添加模型中的数据后,我们的页面被重定向到名为"post_detail"的URL。