Как передать "id" в форму заполнения данных?

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО InstantCMS 2.X
#1 28 сентября 2017 в 15:24
Друзья как я могу передать id в форму ?

  1. <?php
  2.  
  3. class formSportTeam extends cmsForm {
  4. public function init(){
  5. return array(
  6. 'type' => 'fieldset',
  7. 'childs' => array(
  8. new fieldList('teams_id', array(
  9. 'title' => LANG_SPORT_TEAM_ADD,
  10. 'hint' => LANG_SPORT_TEAM_LIST,
  11. 'generator' => function ($item) {
  12. $model = cmsCore::getModel('sport');
  13.  
  14. $tournaments = $model->getTournamentsTeams();
  15. $items[''] ='';
  16. if ($tournaments){
  17. foreach ($tournaments as $tournament) {
  18. if (!$tournament['id_team']) {
  19. $items[$tournament['id']] = $tournament['tournament_name'];
  20.  
  21. }
  22. }
  23. }
  24.  
  25. return $items;
  26. }
  27. ))
  28.  
  29.  
  30. )
  31.  
  32. )
  33.  
  34. );
  35.  
  36. }
  37.  
  38. }
Мне нужно фильтровать данные в модели
  1. $this->filterEqual('s.tournament_id', $id);
но в форму не знаю как передать $id ошибка выходит.

  1. /* Вывод команды в списке добавления */
  2. public function getTournamentsTeams(){
  3. $user = cmsUser::getInstance();
  4. $this->joinLeft('sport_teams_tournaments', 's', 's.teams_id = i.id');
  5. $this->select('s.teams_id', 'id_team');
  6. $this->select('s.tournament_id', 'id_tounrnament');
  7. $this->filterEqual('user_id', $user->id);
  8. return $this->get('sport_teams');
  9. }
#2 28 сентября 2017 в 16:40
  1. public function init($id=false){
  1. $form = $this->getForm('team', array($id));
#3 28 сентября 2017 в 20:50


  1. public function init($id=false){
  1. $form = $this->getForm('team', array($id));

Loadырь

Да спасибо передалось но вот сюда не могу передать почему то не показывает ид, ошибка
Notice: Undefined variable: id in C:\OpenServer\domains\localhost\system\controllers\sport\forms\form_team.php on line 18
  1.  
  2. <?php
  3.  
  4. class formSportTeam extends cmsForm {
  5.  
  6. public function init($id = false){
  7. Тут показывает с помощью dump
  8. return array(
  9.  
  10. 'type' => 'fieldset',
  11. 'childs' => array(
  12.  
  13. new fieldList('teams_id', array(
  14. 'title' => LANG_SPORT_TEAM_ADD,
  15. 'hint' => LANG_SPORT_TEAM_LIST,
  16. 'generator' => function ($item) {
  17. $model = cmsCore::getModel('sport');
  18. $tournaments = $model->getTournamentsTeams($id);
  19.  
  20. А тут нет.
  21. $items[''] ='';
  22. if ($tournaments){
  23. foreach ($tournaments as $tournament) {
  24. if (!$tournament['id_team']) {
  25. $items[$tournament['id']] = $tournament['tournament_name'];
  26.  
  27. }
  28. }
  29. }
  30.  
  31. return $items;
  32. }
  33. ))
  34.  
  35.  
  36. )
  37.  
  38. )
  39.  
  40. );
  41.  
  42. }
  43.  
  44. }
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.