Безопасный способ получения и передачи User-Id через CakePHP - PullRequest
0 голосов
/ 10 июля 2011

Я CakeNoob, поэтому примите мои искренние извинения за этот вопрос.

После того, как пользователи добавили свою учетную запись в мое веб-приложение, они перенаправляются пользователям / просматривают, где они могут видеть данные своей учетной записи и редактировать их.

Отсюда есть ссылки на достижения / добавления, где люди могут добавлять достижения в свой профиль. Модель User and Achievement хорошо сочетается с помощью ассоциаций ownTo и HasMany. Как только пользователь добавляет Достижение, оно будет отображаться на странице «Пользователи / просмотр» через соответствующие Достижения.

Проблема: как только я вручную добавляю Достижение через достижения / добавления (и выбираю текущего пользователя из списка (все)), он работает нормально.

Но я хочу, чтобы достижения могли быть добавлены только тогда, когда пользователи приходят из пользователей / просмотра, поэтому мне нужно перенести идентификатор пользователя в достижения / добавления, а затем сказать Cake, что это идентификатор пользователя (внешний ключ), который нужно использовать .

  • Все пользователи вошли в систему, как только они достигли пользователей / просмотра, поэтому я думаю, что сессия Auth может мне помочь.

Я пробовал много вещей, но мои знания слишком малы, чтобы решить это. Ваши решения приветствуются! Спасибо

Ответы [ 2 ]

0 голосов
/ 10 июля 2011

Вы можете сохранить его с помощью:

$this->data['User']['id'] = $this->Auth->user('id');
$this->User->save($this->data);
0 голосов
/ 10 июля 2011

если вы используете «Auth» для регистрации и входа, вы можете использовать $ this-> Auth-> user ('id');чтобы получить идентификатор пользователя в приложении

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