【发布时间】:2011-07-09 18:14:45
【问题描述】:
如何避免使用 Django 在服务器端和客户端重复验证代码?
鉴于 Django 遵循 Don't Repeat Yourself 原则,有办法做到这一点似乎是合乎逻辑的,但我不知道怎么做。
【问题讨论】:
-
您必须在服务器端验证数据,因为您无法信任来自客户端的任何内容。有人可以轻松绕过您在网页中输入的任何验证。您还应该验证客户端上的数据 - 以提供更快速、更愉快的用户体验并略微降低服务器负载。你更愿意消除这两个中的哪一个?
-
@Robus, @ratsbane:我认为我所说的有两种解释,我并不是指你们提到的那种。 :) 我指的是 我的代码 的重复,而不是验证本身的重复。即你如何避免重复自己(例如一次在 JavaScript 中,一次在 Python 中)?例如,有没有办法根据 Python 代码自动生成 JavaScript 验证?或者以声明方式编写验证并从中生成两种代码?等
标签: python django code-duplication client-side-validation server-side-validation