我从文本框提交位置,并以逗号分隔形式输入值,如ngp,akola,kanpur。 现在我想如果我在位置文本框中有3个值,那么它在位置表中插入3行用于ngp,第二行用于akola,第三行用于kanpur。 但它也需要最后插入用户表的id并将所有值发布到位置表中。
我的位置表包含字段ID,name,user_id。
在user_id列中我需要最后插入的用户表id,在名称列中我需要在表中插入所有值..
请帮我做这个..我的代码是。
function add() {
if (!empty($this->request->data)) {
$this->User->set($this->data['User']);
$isValidated = $this->User->validates();
if ($isValidated) {
// Generating UUID
if (!empty($this->request->data['User']['company_name'])) {
$this->request->data['User']['is_business'] = 1;
}
if ($this->User->save($this->request->data, array('validate' => false))) {
$lastId = $this->User->id;
$location = implode(',',$this->request->data['User']['location']);
for(i=1;i<=$location;i++){
$this->Location->save($location);
}
}
}
}
}
答案 0 :(得分:0)
$lastId = $this->User->id;
$location = explode(',',$this->request->data['User']['location']);
foreach($location as $value){
$data = array();
$data["name"] = $value;
$data["user_id"] = $lastId;
$this->Location->save($data,false);
$this->Location->id = false;
}
答案 1 :(得分:0)
Model::saveAll(array $data = null, array $options = array())
$this->request->data['Location'] = explode(',',$this->request->data['User']['location']);
if ($this->User->saveAll($this->request->data, array('validate' => false))){ // ...}