我用CakePHP 2.3编写,为我的项目用户管理。一切正常。 但是现在我希望有一个注册功能,用户可以在其中创建自己。 即使这不是问题。但Cake会自己设置用户名。
我有两个字段。 “first_name”和“last_name” 好吧,我想我用PHP函数“strtolower”将两个字段转换为小写,在它们之间加上一个点,结果给出了用户名。例如“john.doe”
我唯一的问题是,如何解决这个问题。
我认为当我将php函数放入我的“注册”视图时,它不会对我有帮助,因为这些字段是空的,所以函数无法完成他的工作。
如何将其恢复,以便输入由用户格式化,如我的示例所示,并存储在单独的数据库字段中
谁能在这方面帮助我? 提前谢谢。
答案 0 :(得分:0)
在保存用户之前在控制器中。
例如:
public function register() {
// ...
$username = strtolower($this->request->data['User']['first_name'] . "." . $this->request->data['User']['last_name']);
$this->request->data['User']['username'] = $username;
if ($this->User->save($this->request->data)) {
// ...
}
}
此外,如果您无法理解Cake或MVC设计模式的工作方式,请帮助您并阅读CakePHP Cookbook。