OK ich verstehe was du meinst, vielleicht habe ich einfach zu kompliziert gedacht.
Habe im MM2 (Bücher) ein Select eingefügt mit Quelltabelle MM1 (Autor) und Werte-Spalte Autor verknüpft.
Anschließend im MM2 die Autoren zugewiesen.
Die Funktion ist im Template vom MM1 eingefügt:
PHP-Code:
function getBooksOfAuthor($strAlias, $format='html5')
{
$objMetaModel = \MetaModels\Factory::getMetaModel('buecher'); // Name des Metamodel
// $objFilter = $objMetaModel->prepareFilter(ID, array()); auskommentiert da nicht benötigt
$objFilter->addFilterRule(new \MetaModels\Filter\Rules\SearchAttribute($objMetaModel->getAttribute('autor'), $strAlias, $objMetaModel->getAvailableLanguages())); // "author" mit dem Attributsnamen ersetzen, den der Autor bei den Büchern hat (da verknüpft vrmutl. ein Select o.ä.)
$objItems = $objMetaModel->findByFilter($objFilter, $intOffset = 0, $intLimit = 0); // falls sortiert oder die Anzahl limitiert (3) werden soll
return $objItems->parseAll($format, $objMetaModel->getView(5)); // hier die ID der Rendereinstellung von den Büchern die benutzt werden soll (vtl. ne eigene Anlegen)
}
Und darunter die Ausgabe:
PHP-Code:
<?php foreach (getBooksOfAuthor($arrItem['raw']['alias']) as $arrBooks): ?>
<?php echo $arrBooks[$this->getFormat()]['attributname']; ?>
<?php endforeach; ?>
Leider wird mir immer noch dieser Fehler angezeigt:
PHP-Code:
Fatal error: Using $this when not in object context in /www/htdocs/v125793/cinemaplexx/system/modules/metamodels/classes/src/MetaModels/Factory.php on line 107
Lesezeichen