Можно ли использовать sfConfig vars в routing.yml? - PullRequest
2 голосов
/ 05 января 2011

Поскольку кажется, что невозможно вставить код PHP, как в settings.yml, но, может быть, есть способ как-то получить доступ к sfConfig переменным?

В дополнение к ответу Мэрлина, я попробовал это:

sfConfig::set('orgID', 23435);

test:
  url:   /test/:orgID
  param: { module: default, action: index, orgID: %APP_orgID% }

Я ожидал, что url_for('@test) сгенерирует URI, подобный этому /test/23435, но я получу только /test.Это не похоже на работу, есть идеи, почему?

Ответы [ 3 ]

1 голос
/ 29 января 2013

Какую версию Symfony вы использовали?У меня не было проблем с использованием php внутри файла routing.yml:

test:
  url:   /test/:orgID
  param: { module: default, action: index, orgID: <?php echo sfConfig::get('app_orgID'); ?> }

Одна вещь, которую вы должны помнить, если вы используете PHP в конце строки, вы должны явно передавать символ конца строки:1004 *

requirements:
  id: <?php echo 'something something'."\n"; ?> 

Я использовал параметр, определенный в settings.yml, используя sfConfig::get('sf_<param_name>')

0 голосов
/ 31 августа 2011

Вы можете использовать динамическую маршрутизацию:

$routing->prependRoute('test', new sfRoute('/test/:orgID', array(
                    'module' => 'default',
                    'action' => 'index',
                    'orgID' => null
                        )));
0 голосов
/ 05 января 2011

Вы можете получить доступ к значениям Symfony как %SF_DATA_DIR%, попробуйте это как %APP_YOUR_VALUE%.

...