Как создать еще один экшен после ID ? 2.X

 
Посетитель
small user social cms
Медаль
Сообщений: 624
Друзья доброго времени суток, как создать вот такую цепочку, забыл как это делается ?
http://www.test.com/sport/team/1 - на данные момент так, но мне нужно вот так - http://www.test.com/sport/team/1/basketball
То есть создать для id различные страницы.
Второй вопрос, как заменить id на названия ? http://www.test.com/sport/team/test/ - там у каждой созданной страницы свое название, но ее надо сделать уникальной что бы при создание одинаковых системных ссылок писало что такое уже есть.
Спасибо!
Редактировалось: 2 раз (Последний: 3 сентября 2017 в 10:14)
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 3539
1. Определение действий
2. Для примера
Реклама
cms
Посетитель
small user social cms
Медаль
Сообщений: 624

Да я прописал это но он перекидывает на этот же экшен c измененной ссылкой, а мне нужно что бы шаблон присвоить отдельный как это сделать ?

Код PHP:
  1. public function run($id = false, $basketball = false)
то есть сделать отдельный basketball.tpl.php
Редактировалось: 2 раз (Последний: 3 сентября 2017 в 13:01)
Посетитель
small user social cms
Медаль
Сообщений: 624

Все я понял, нужно просто прописывать массив то что передаю. например team/1/1 и в экшине перенаправлять туда.
Просто я хотел сделать что бы бы вместо цифры 1 был basketball
А как присвоить другой шаблон ?

Например я не хочу передавать данные как мне это сделать ?
Код PHP:
  1.  
  2. <?php
  3.  
  4. class actionSportTeam extends cmsAction {
  5. public function run($id, $basketball = true){
  6. if (!$id) { cmsCore::error404(); }
  7. $tournament = $this->model->getTournament($id);
  8. if (!$tournament) { cmsCore::error404(); }
  9. $team_activ = $this->model->getTeamActiv($id); Например вот это не хочу переносить в $basketball, что я должен сделать ?
  10. $team_admin = $this->model->getTeamAdmin($id);
  11. $tournament_in_team = $this->model->getTournamentInTeam($id);
  12. $sport_schedule_team = $this->model->getSportScheduleTeam($id);
  13. $tournament_team_contest = $this->model->getTournamentTeamContest($id);
  14. $template = cmsTemplate::getInstance();
  15. $user = cmsUser::getInstance();
  16. $template->render('team', array(
  17. 'tournament' => $tournament,
  18. 'team_activ' => $team_activ,
  19. 'team_admin' => $team_admin,
  20. 'tournament_in_team' => $tournament_in_team,
  21. 'sport_schedule_team' => $sport_schedule_team,
  22. 'tournament_team_contest' => $tournament_team_contest,
  23. 'is_user_in_tournament' => $this->model->isUserInTournament($user->id, $id)
  24. ));
  25.  
  26. }
  27.  
  28. }
Редактировалось: 3 раз (Последний: 3 сентября 2017 в 13:34)
Посетитель
small user social cms
Медаль
Сообщений: 624
Решил вот так

<?php if (!$id_page == $ball) { ?> это в шаблон

а это экшен

Спойлер
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.