Неопределенная переменная с Symfony (администратор-генератор) - PullRequest
0 голосов
/ 12 июля 2011

Я хотел создать свой собственный шаблон для администратора-генератора, поэтому я следовал учебному пособию и сейчас делаю свой собственный шаблон на основе шаблона "администратор".Но я определил новую переменную с именем "rubrique" в файле "newAction", и когда я попытался вызвать ее в шаблоне "newSuccess.php", я получил эту ошибку:

Примечание: неопределенная переменная:Рубрика в C: \ wamp \ www \ PhpProject2 \ data \ generator \ sfDoctrineModule \ immo \ template \ templates \ newSuccess.php в строке

  • newAction:

    открытая функция executeNew (sfWebRequest $ request) {$ this-> rubrique = 12;

    }

  • NewSuccess.php:

    echo $ rubrique;

ps: я упростил код

У кого-нибудь есть решение ??извините за мой плохой английский: p

Ответы [ 2 ]

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

Извините за задержку.

Хорошо ... Думаю, я знаю вашу проблему. Я потратил много времени на изменение Администратор администратора для проекта, но это было более 1,5 лет назад, поэтому мне пришлось освежить свою память.

Я делаю обоснованное предположение, говоря, что вы выводите переменную в data\generator\sfDoctrineModule\immo\template\templates\newSuccess.php примерно так:

<?php echo $rubrique; ?>

Эти файлы сначала компилируются, а затем выполняются. При первом проходе переменная $rubrique недоступна. Попробуйте вместо этого:

[?php echo $rubrique; ?]

Обратите внимание на квадратные скобки. Я думаю, что файлы запускаются через регулярное выражение или str_replace или что-то; Я не могу вспомнить точно.

Попробуйте это, затем очистите кэш ./symfony cc, что важно. Это должно работать сейчас.

Либо переопределите шаблон, поместите его в каталог вашего модуля и используйте его с обычными тегами php.

Надеюсь, это поможет:)

Edit:

Возможно, вы уже знаете это, но если вы хотите переопределить файл, как описано выше, он будет доступен в кеше: cache\frontend\dev\modules\{$MODULE_NAME}\templates\newAction.php, где {$MODULE_NAME} будет именем вашего модуля с добавлением слова auto ; например: autoUser.

Это переопределяет кэшированную версию. Скопируйте это в шаблонную директорию вашего модуля и отредактируйте по своему вкусу.

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

вы получаете ошибку здесь?

C: \ wamp \ www \ PhpProject2 \ data \ generator \ sfDoctrineModule \ immo \ template \ templates \ newSuccess.php в строке

Я не знаком с Doctrine, но вы должны определить свои собственные действия и шаблоны внутри

apps / backend / modules / YOURMODULE / actions (для действий )

и

приложения / серверная часть / модули / YOURMODULE / шаблоны (для шаблонов)

Вы выполнили шаги, описанные здесь ? http://www.symfony -project.org / Jobeet / 1_4 / Doctrine / эс / 12

Привет

...