CakePHP 1.3: общедоступный профиль пользователя с настройкой маршрутов - PullRequest
0 голосов
/ 07 февраля 2012

All

У меня есть приложение CakePHP, которое я разрабатываю с учетными записями пользователей и некоторым социальным взаимодействием, и я хочу, чтобы у каждого пользователя был свой профиль, чтобы он был общедоступным, и любую информацию, которую пользователь решит сделать доступной. В настоящее время пользователь может получить доступ к своей личной учетной записи на http://www.domain.com/account,, но я хочу, чтобы у пользователя также был профиль на http://www.domain.com/users/profile/user234.

Каков наилучший подход?

  1. Создать function profile($username) в моем users_controller.php?
  2. Создать profiles_controller.php для обработки профилей пользователей?
  3. Есть ли лучший способ?
  4. Или есть плагин профиля CakePHP, который я могу использовать

Кроме того,

Можно ли использовать маршруты CakePHP, чтобы иметь что-то вроде этого: http://user1234.domain.com?

Спасибо за помощь!

1 Ответ

1 голос
/ 07 февраля 2012

1 & 2) Оба способа работают. Я бы назвал его контроллером профилей, потому что это просто более логично, но для этого нет реальной рекомендации. Обычно вы делаете вещи в домене, к которому они принадлежат.

3) Не совсем.

4) Не для профилей, а для всего пользователя http://github.com/cakedc/users Но имейте в виду, что часть профилей использует хранилище ключей / значений для полей профиля. Но вы можете просто изменить это, расширив модели плагинов и контроллеров на уровне приложений - ООП 4tw! :)

Для маршрутизации на поддоменах вам необходимо реализовать собственный маршрутный объект. Смотрите этот билет, связанный с этой темой. http://cakephp.lighthouseapp.com/projects/42648/tickets/2429 Найдите файл book.cakephp.org, если вам нужно научиться создавать собственные маршруты. См. http://book.cakephp.org/2.0/en/development/routing.html?highlight=router#custom-route-classes для CakePHP 2.0. И см. http://book.cakephp.org/1.3/en/view/1634/Custom-Route-classes для 1,3.

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