Форма CakePHP, которая взаимодействует с двумя таблицами и контроллерами - PullRequest
0 голосов
/ 15 сентября 2011

В моем приложении у меня есть пользовательский контроллер и контроллер профилей с таблицами и моделями для каждого.Когда пользователь регистрирует учетную запись, он создает как учетную запись пользователя, так и профиль.Таким образом, они будут сохранять данные в две таблицы!

Как мне это сделать?Так как логика заключается в двух разных моделях и контроллерах, что прекрасно, когда они приходят, чтобы редактировать его, поскольку они являются отдельными битами, но при регистрации становится неясным, как это будет работать: /

Может кто-нибудь помочь?Спасибо

Ответы [ 3 ]

1 голос
/ 15 сентября 2011

вы можете использовать saveAll () вместо save ().Это позволит вам сохранить модель (например, пользователя) вместе со связанной моделью (профилем).

Хорошее простое описание здесь, в официальных документах: http://book.cakephp.org/view/1032/Saving-Related-Model-Data-hasOne-hasMany-belongsTo

также этот постстарый, но стоит прочитать, чтобы вы поняли.http://nuts -and-bolts-of-cakephp.com / 2008/08/01 / практическое использование-оф-SaveAll-части-1-рабочим-с-множественных моделей /

0 голосов
/ 15 сентября 2011

Важно иметь отношения между моделями.Вы не говорите, есть они у вас или нет.Если нет, вы должны определить отношения, такие как:

User hasOne Profile
Profile belongsTo User

Это позволит вам получить доступ к одной модели из другой, и наоборот.В соответствии с рекомендациями boobyWomack вы должны проверить эту ссылку , в которой приведены примеры метода saveAll.

Cheers

0 голосов
/ 15 сентября 2011
$this->ModelName1->save($this->data);
$this->ModelName2->save($this->data);

До тех пор, пока переменная данных создана правильно, модель также должна сохранять ее правильно ^ _ ^

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...