Python django:泛型类视图+;POST=HTTP 405(不允许使用方法)

Python django:泛型类视图+;POST=HTTP 405(不允许使用方法),python,django,http,http-status-code-405,Python,Django,Http,Http Status Code 405,最近,我开始将一些视图函数转换为通用视图。 转换预期用于处理POST请求的函数(通过AJAX表单)会导致“405方法不允许”HTTP异常。 我确信是而不是关于CSRF的:Ajax发送有效的令牌,将通用视图更改回视图函数(在测试用例中,它们基本相同)修复了问题,最后,出于测试目的,我禁用了CSRF中间件。 有人遇到过类似的问题吗?我想您使用的是基于类的视图。如果是这样,那么您需要在视图中定义post方法,或者使用mixin(例如django.views.generic.edit.ProcessFo

最近,我开始将一些视图函数转换为通用视图。 转换预期用于处理POST请求的函数(通过AJAX表单)会导致“405方法不允许”HTTP异常。 我确信是而不是关于CSRF的:Ajax发送有效的令牌,将通用视图更改回视图函数(在测试用例中,它们基本相同)修复了问题,最后,出于测试目的,我禁用了CSRF中间件。
有人遇到过类似的问题吗?

我想您使用的是基于类的视图。如果是这样,那么您需要在视图中定义
post
方法,或者使用mixin(例如
django.views.generic.edit.ProcessFormView
)。如果你想完全理解为什么这是必要的,那么看看django.views.generic.base.View的方法

我的url结尾没有用斜杠。那是我的问题。