2013-07-11 2 views
-1

Хорошо, поэтому я использовал ZF 1.12 в течение некоторого времени, и это хорошо послужило моей цели. В последнее время я заметил некоторые проблемы. Когда я следую ссылке, такой как href="account", я бы ожидал, что она загрузит макет, а затем загрузит представление, связанное с AccountContoller->indexAction в div, содержащем оператор $this->layout()->content.Имя контроллера Zend Framework добавлено дважды в ссылку

Он делает это, но тогда каждая ссылка, содержащаяся в макете, теперь содержит этот шаблон: baseUrl/account/link. Другими словами, текущая контрольная «ссылка» помещается перед ссылкой, указанной в теге href.

Почему это и как его сохранить?

+0

ли это все равно произойдет, если вы положите 'href ="/account "вместо этого? –

+0

с помощью «/» спереди заставляет его пропускать общую папку и идти прямо к корню url, который не является желаемым поведением. – rpfujiw

+0

Я не совсем понимаю, что вы подразумеваете под «пропустить общую папку вместе». Тем не менее вы всегда можете использовать [Zend View URL Helper] (http://framework.zend.com/manual/1.12/en/zend.view.helpers.html), чтобы создавать свои URL-адреса вместо использования жестко закодированных. Надеюсь, это решит вашу проблему. –

ответ

0

так и для тех, кто хотел бы более конкретное решение здесь является то, что я сделал, а за советом Роландо (в еще раз спасибо Роландо) вместо жесткого URL кодирования я использовал это вместо того, чтобы в макете

<?php echo $this->url(array('controller' => 'account', 'action' => 'index'));?>

+0

Да, это лучшее решение. Вы также можете использовать этот помощник для передачи параметров, если это необходимо. т.е.: url (array ('controller' => 'account', 'action' => 'index', 'id' => '2'); –

+0

Рад помочь, отметьте свой ответ как правильный, чтобы закрыть вопрос. –