我在html按钮的视图中运行函数时遇到问题,但代码似乎是正确的,所以如果有人知道我错过了什么,我会非常感激。最终目标是开始芹菜任务,如果有更好的方法,请告诉我。
template.html:
<form action="{% url 'save' pk=project.id %}" method="POST">
{% csrf_token %}
<button id="saveChanges" type="submit" class="btn btn-primary btn-sm">Save</button>
</form>
urls.py:
urlpatterns = patterns('',
....
url(r'^manage/save(?P<pk>\d+)/$', 'myapp.views.Save', name="save"),
....)
views.py
def Save(request, pk):
if request.method == 'POST':
project = Project.objects.get(id = pk)
....
task.delay(project.id)
return HttpResponse('OK', status=200)
答案 0 :(得分:0)
@DoctorWizard使用manage.py runserver
运行您的服务器 - 日志将在同一终端上。
答案 1 :(得分:0)
您的网址格式使用的是命名组,它会将关键字参数传递给视图。你的观点只接受位置论证。
将网址格式更改为r'^manage/save(\d+)/$'
(您想要save
后的斜杠吗?)
OR
将视图参数更改为def Save(request, pk=None):
或def Save(request, **kwargs):
,然后从pk
拉出kwargs
。
https://docs.djangoproject.com/en/1.6/topics/http/urls/#named-groups