我想通过像 '/index/adduser/id/7' 这样的链接在用户表中添加一个用户。
问题
我应该在 Controller 内或模型文件内的某个地方验证“adduserAction”函数内的用户输入吗?我已将包含数据库相关功能的文件放在“模型”目录中。假设用户通过“id”添加到表中。此 ID 是通过“get”发送的。最后通过“AddUser”函数(在模型文件中)将其添加到表中。然后我应该在“adduserAction”或“AddUser”中验证这个“id”。?在可扩展性方面,在“AddUser”中进行会更好吗?
最佳答案
我会说把验证放在你的模型中。然后,您可以将验证规则保存在一个中心位置。您的 Controller 应该如何知道有效用户名的确切长度?那是模范领土。您的 Controller 可以询问模型用户名长度是否正确或不确定,但规则本身需要在您的模型中。在我的 Controller 中,我会做这样的事情:
$model = 新模型;
$model->loadFromArray(要发布的东西);
if (!$model->isValid()) { forward back to form }
$model->save();
关于php - Zend 框架 : what is the right place to validate user input?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2157132/