是否有推荐的方法使用Django清理输入字符串而不通过Django表单系统?
也就是说,我正在编写通过AJAX提供表单输入的代码,所以我正在跳过整个Form模型django提供的.但我确实希望在提交到数据库之前清理输入.
Mat*_*ker 16
Django Form模型不只是关于渲染表单,它们更多的是关于处理和清理表单(GET/POST)输入,这是你想要做的.当您的AJAX请求中的POST或GET数据到达您的服务器时,它基本上与表单数据无法区分.我主张创建一个Form模型,它是AJAX请求的模型.
想想一个示例POST:
POST /login.jsp HTTP/1.1
Host: www.mysite.com
User-Agent: Mozilla/4.0
Content-Length: 27
Content-Type: application/x-www-form-urlencoded
userid=joe&password=guessme
Run Code Online (Sandbox Code Playgroud)
这可能来自一个AJAX请求或一个表单,当它到达你的服务器时它并不重要!当然他们是所谓的表款,因为这通常是在那里GET或POST数据从何而来,但它不具有从一种形式:)
如果您创建一个Form模型来表示您的AJAX请求,您将获得随之而来的所有钩子和清理,而且它们都会更加"django-esque".
有关您的评论的更新:
我想你有多个表单类.显然我不知道你的系统是如何设计的,但我会提供我能提出的建议.
就像你说的那样,你将使用它来清理你的数据,所以你需要根据你发送的数据来定义你的Form类.例如,如果我有一个AJAX请求,使用Name,Email和CommentBody数据提交注释,这些数据将是一个Form类.如果我有另一个AJAX请求发布一个新文章发送Title,Author和ArticleBody,那将是另一个Form类.
并非所有的AJAX请求必然需要一种形式,如果你有一个AJAX调用票了,你可能不会把它看成一个形式,因为(我猜),你就不需要消毒任何数据的注释.
归档时间: |
|
查看次数: |
3679 次 |
最近记录: |