2015-10-20 1 views
1

J'ai essayé avec le viewLaper partialLoop. Cela ne fonctionne pas, je vais essayer de l'expliquer correctement. Dans mon script de vue, je veux montrer les informations d'un événement (Ribaveranstaltungen), cela fonctionne. Pour chacun des événements, je veux montrer les documents (Ribadocs). J'ai pensé que cette chose de partialLoop pourrait être une bonne idée. Un peu de problème que j'ai eu avec la liaison des données à la vue à l'intérieur de mon contrôleur à cause de cela je crée les données dans la vue, je ne suis pas content avec ça, mais je n'ai pas trouvé une autre solution pour le moment. Cela pourrait faire partie du problème.treeview avec viewhelpers et partialLoop

Voici mon script de vue index:

<?php 
$veranstaltung=array(); 
$dokument=array(); 
$i=1; 
$veran=new Application_Model_DbTable_Ribaveranstaltungen(); 
$documents = new Application_Model_DbTable_Ribadocs(); 

$veranstaltung=$veran->fetchAll(); 
foreach($veranstaltung as $v) : 
    $dokument=$documents->getDocumentveranstaltung1($v->id);?> 

    <tr> 
     <td class="row_<?PHP echo $i % 2;?>"><?php echo $v->veranstaltung;?></td> 
    </tr> 
     <td class="row_<?PHP echo $i % 2;?>"><?php echo $this->partialLoop('/helpers/_docs-row.phtml', $dokument);?></td> 
    <?php 

    $i=$i+1; 
endforeach; ?> 

et voici mon partialhelper:

<?php 
$i=1; 
if ($dokument != NULL) 
{?> 
    <tr> 
    <td class="row_<?PHP echo $i % 2;?>"><?php echo $dokument->docid;?></td> 
    <td class="row_<?PHP echo $i % 2;?>"><?php echo $dokument->veranstaltung;?></td> 
    <td class="row_<?PHP echo $i % 2;?>"><?php echo $dokument->typ;?></td> 
    <td class="row_<?PHP echo $i % 2;?>"><?php echo $dokument->bezeichnung;?></td> 
    <td class="row_<?PHP echo $i % 2;?>"><?php echo $dokument->quelle;?></td> 
    <td class="row_<?PHP echo $i % 2;?>"><?php echo $dokument->bemerkung;?></td> 
    <td class="row_<?PHP echo $i % 2;?>"><?php echo $dokument->pfad;?></td> 
    </tr> 
<?php 
$i=$i+1; 
} ?> 

J'ai plusieurs questions parce que je sais que je devrais lier les données dans le contrôleur: Pourquoi n » t le code pour le travail partiel? Si c'est parce que je n'ai pas lié les données à la vue ($ this), comment puis-je gérer cela, car les données changent pour chaque événement. (contrainte: veranstaltung 1- n documents). Dernier, est-ce exact, que ce partialLoop fait le look automatiquement, comme montre toutes les données dans l'objet?

+0

Je pense qu'il devrait être $ this-> docid, et ainsi de suite – artsylar

Répondre

2

Si vous souhaitez imprimer le contenu des données transmises à votre boucle partielle, je pense que vous devez utiliser $ this-> docid, et ainsi de suite, et non $ dokument-> docid. Ou, vous pouvez le faire afin que vous puissiez accéder aux membres comme $ this-> dokument-> docid

<?php echo $this->partialLoop('/helpers/_docs-row.phtml', array('dokument' => $dokument));?>