0

当我add()UsersController.

public function add() {
  if ($this->request->is('post')) {
    $this->request->data['User']['book_id'] = $this->Book('id'); 
    if ($this->User->saveAssociated($this->request->data)){
      $this->request->data['User']['book_id'] = "ff";
      $this->Session->setFlash(__('Save User'));
      return $this->redirect(array('action' => 'index'));
    }
    $this->Session->setFlash(__('User Error.')); 
  }
}

如果我添加一个User我想将图书 ID 保存在我的User book_id. 有谁知道如何处理这个问题?谢谢!

4

1 回答 1

0

当您添加新用户时,他是否可以从下拉列表中(在表单中)选择一本书?如果是这样,$this->request->data['User']['book_id']将已经包含 Book id。

无需$this->request->data['User']['book_id'] = $this->Book('id');像您所做的那样显式编写。

在我看来,add.ctp 视图文件应该包含一个选择框,其中包含用户可以选择的所有书籍的列表。在选择其中一个并提交表单时,$this->request->data['User']['book_id']将自动存储 book_id,而无需在控制器中编写任何内容。

请指定 add.ctp 表单字段,以便我更好地为您提供帮助。

谢谢!

于 2015-10-11T14:11:28.427 回答