#php #cakephp-1.3
#php #cakephp-1.3
Вопрос:
у меня есть простая форма с двумя полями ввода, и я хотел бы сохранить данные из одного поля внутри одной таблицы, а из другого — во второй таблице.
для сохранения данных я использую $this->Room->save($this->data)
есть идеи, как это можно сделать?
Спасибо
Редактировать:
один из них — это rooms
другой roomates
общий ключ, который я хочу использовать, это is id_rooms
и id_roomates
Комментарии:
1. Какие две таблицы и модели? Также будет лучше, если вы напечатаете массив, который вы получите в $this->data.
2. Значит, вам также нужно сохранить $this->data в таблице roomates ? Правильно ли это сохраняется в таблице rooms?
3. ну, я хочу, чтобы некоторые данные хранились в таблице room, а некоторые — в таблице roomates. я знаю, что могу получить данные из формы с помощью
$this->data
, но мне было интересно, может быть, я могу передать, какие данные я хочу сохранить. тогда я могу сказать что-то вроде$this->Roomtitles->save($this->data(array(some fields)))
и$this->Room->save($this->data(array(some fields)))
4. Я предлагаю вам построить структуру вашего this-> data так, как вы хотите, чем сохранить ее
5. я уже создаю его, я просто хочу сохранить данные в нескольких таблицах
Ответ №1:
Для Room
построения массива, как показано ниже. Это всего лишь пример, установите его в соответствии с вашими фактическими полями.
$this->data['Room']['id_rooms'] = $this->data['Room']['id']
$this->data['Room']['abc'] = $this->data['Room']['xyz']
Затем сохраните данные в таблице room: $this->Room->save($this->data)
.
Затем создайте массив для второй таблицы, скажем Roomtitle
, как показано ниже:
$this->data['Roomtitle']['id_rooms'] = $this->data['Room']['id']
$this->data['Roomtitle']['abc'] = $this->data['Room']['xyz']
и сохраните его: $this->Roomtitle->save($this->data)
.