Neden düzgün / ithalini mümkün Zend_Dojo değil mi?

1 Cevap php

Ben garip bir sorun yaşıyorum: Ben geçmişte büyük etkisi Zend Dojo'sunu ve Zend Form kullandım, ama benim en son proje üzerinde Zend_Dojo görünümünde için zorunlu olmadıkça sağlamak için reddediyor, ve hatta daha sonra uygun ithal olmayacak Ben kullanıyorum dijits için kütüphaneler. Burada geçerli kod:

Bootstrap.php:

protected function _initViewHelpers() {
	$this->bootstrap('layout');

	$layout = $this->getResource('layout');
	$view = $layout->getView();

    $view->addHelperPath('Zend/Dojo/View/Helper/', 'Zend_Dojo_View_Helper');

    $viewRenderer = new Zend_Controller_Action_Helper_ViewRenderer();

    $viewRenderer->setView($view);

	Zend_Controller_Action_HelperBroker::addHelper($viewRenderer);

	$view->doctype('XHTML1_TRANSITIONAL');

	$view->headMeta()->appendHttpEquiv('Content-Type', 'text/html;charset=utf-8');
	$view->headLink()->appendStylesheet('base.css');
}

IndexController.php (bazı diğer ilgisiz şeylerle alıntı)

public function renderAction() {
$this->_helper->layout->setLayout('render');
//SNIP
if ($this->getRequest()->getParam("medialeadsource"))
	{
		$source = $this->getRequest()->getParam("medialeadsource");
		$mls = $this->sourceService->getSourceByURI($source);
		$this->view->source = $mls;
		$form = new App_forms_Sweepstakes($mls->__get('id'), $mls->__get('layout'));

		$this->view->form = $form;			
		switch($mls->__get('template')) {
			case '1':
				$this->_helper->viewRenderer('template-1');
				break;
			case '2':
				$this->_helper->viewRenderer('template-2');
				break;
			case '3':
				$this->_helper->viewRenderer('template-3');
				break;
			default:
				$this->_helper->viewRenderer('template-1');
				break;
		}
		$this->view->test = $this->sourceService->isURISlideshow($source);
		$this->view->subheadline = $mls->__get('subheadline');
		$this->view->body = $mls->__get('body');
		Zend_Dojo::enableView($this->view);
		Zend_Dojo::enableForm($form);
		Zend_Dojo_View_Helper_Dojo::setUseDeclarative(); 
//SNIP
}

Ve şablon-1.phtml dan (şimdiye kadar Dojosu'nun için kurulum ettik sadece görünümü. Ayrıca bu özel görünümleri için düzen kendisi kendi herhangi bir içerikten yoksun olduğunu ve bu nedenle konularda etkileyen olmadığını unutmayın). Ben sadece tekrar uygulanabilir kısmını dahil ediyorum:

<?php   
      $this->dojo()->setDjConfigOption('usePlainJson',true)
         ->addStylesheetModule('dijit.themes.tundra');
    echo $this->dojo();

?>  
</head>
<body class="tundra">

Aşağıdaki gibi oluşturulan kodu:

<title>Test View Title</title>
</head>
<body class="tundra">

Yani açıkçası, ben eklerseniz hiçbir şey .. oluyor -> görünümünde zinciri dojo için) (etkinleştirin, burada ne olsun:

<script type="text/javascript" src="primaryFunctions1.js"></script>
<style type="text/css">
<!--
@import "http://ajax.googleapis.com/ajax/libs/dojo/1.2.0/dijit/themes/tundra/tundra.css";
-->
 </style>
 <script type="text/javascript">
//<![CDATA[
var djConfig = {"usePlainJson":true,"parseOnLoad":true};
//]]>
</script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/dojo/1.2.0/dojo/dojo.xd.js"></script>

<title></title>
</head>
<body class="tundra">

Yani hala hiçbir dijit ithalatı. Ben bir kayıp değilim!

1 Cevap

Ben senin sorunun $ form-> () hale getirdikten sonra / gerektiren ithalat oluşturulan bununla ilgili olduğunu düşünüyorum. Genellikle günümüzde ben bile bazen doc son koymak için beni zorluyor düzeninde borderContainers ve diğer dojo şeyler var, düzen scripts.However kullanarak bu soruna alabilirsiniz.