Contao-Camp 2024
Ergebnis 1 bis 9 von 9

Thema: 3.2.4 - vermutlich composer-Fehler!?

  1. #1
    Contao-Nutzer
    Registriert seit
    16.06.2012.
    Ort
    NRW
    Beiträge
    61

    Standard 3.2.4 - vermutlich composer-Fehler!?

    Hallo composer-Team,

    ich bekomme auf unserem Webserver folgende Fehlermeldung wenn ich ein Attribut bearbeiten möchte. Auf unserem lokalen Testserver, bekomme ich diese Fehlermeldung nicht.

    Hat jemand eine Idee, was hier falsch läuft?

    Code:
    Warning: array_keys() expects parameter 1 to be array, string given in composer/vendor/metamodels/core/src/system/modules/metamodels/MetaModels/Dca/Helper.php on line 137
    #0 [internal function]: __error(2, 'array_keys() ex...', '/var/www/virtua...', 137, Array)
    #1 composer/vendor/metamodels/core/src/system/modules/metamodels/MetaModels/Dca/Helper.php(137): array_keys('Referenzalias')
    #2 composer/vendor/metamodels/core/src/system/modules/metamodels/MetaModels/Dca/Attribute.php(82): MetaModels\Dca\Helper->makeMultiColumnName(Object(MetaModels\MetaModel), 'Sprache', 'Beschreibung', false, 'Referenzalias')
    #3 composer/vendor/metamodels/core/src/system/modules/metamodels/MetaModels/Dca/Attribute.php(133): MetaModels\Dca\Attribute->setNameAndDescription(Object(MetaModels\MetaModel), Object(MetaModels\Attribute\Alias\Alias))
    #4 composer/vendor/metamodels/dc_general/system/modules/generalDriver/DcGeneral/Callbacks/ContaoStyleCallbacks.php(425): MetaModels\Dca\Attribute->onLoadCallback(Object(DC_General))
    #5 composer/vendor/metamodels/dc_general/system/modules/generalDriver/DcGeneral/DC_General.php(342): DcGeneral\Callbacks\ContaoStyleCallbacks->onloadCallback('tl_metamodel_at...')
    #6 system/modules/core/classes/Backend.php(258): DcGeneral\DC_General->__construct('tl_metamodel_at...', Array)
    #7 contao/main.php(136): Contao\Backend->getBackendModule('metamodels')
    #8 contao/main.php(287): Main->run()
    #9 {main}
    
    Warning: Invalid argument supplied for foreach() in composer/vendor/metamodels/core/src/system/modules/metamodels/MetaModels/Dca/Helper.php on line 137
    #0 composer/vendor/metamodels/core/src/system/modules/metamodels/MetaModels/Dca/Helper.php(137): __error(2, 'Invalid argumen...', '/var/www/virtua...', 137, Array)
    #1 composer/vendor/metamodels/core/src/system/modules/metamodels/MetaModels/Dca/Attribute.php(82): MetaModels\Dca\Helper->makeMultiColumnName(Object(MetaModels\MetaModel), 'Sprache', 'Beschreibung', false, 'Referenzalias')
    #2 composer/vendor/metamodels/core/src/system/modules/metamodels/MetaModels/Dca/Attribute.php(133): MetaModels\Dca\Attribute->setNameAndDescription(Object(MetaModels\MetaModel), Object(MetaModels\Attribute\Alias\Alias))
    #3 composer/vendor/metamodels/dc_general/system/modules/generalDriver/DcGeneral/Callbacks/ContaoStyleCallbacks.php(425): MetaModels\Dca\Attribute->onLoadCallback(Object(DC_General))
    #4 composer/vendor/metamodels/dc_general/system/modules/generalDriver/DcGeneral/DC_General.php(342): DcGeneral\Callbacks\ContaoStyleCallbacks->onloadCallback('tl_metamodel_at...')
    #5 system/modules/core/classes/Backend.php(258): DcGeneral\DC_General->__construct('tl_metamodel_at...', Array)
    #6 contao/main.php(136): Contao\Backend->getBackendModule('metamodels')
    #7 contao/main.php(287): Main->run()
    #8 {main}
    
    Warning: array_keys() expects parameter 1 to be array, string given in composer/vendor/metamodels/core/src/system/modules/metamodels/MetaModels/Dca/Helper.php on line 137
    #0 [internal function]: __error(2, 'array_keys() ex...', '/var/www/virtua...', 137, Array)
    #1 composer/vendor/metamodels/core/src/system/modules/metamodels/MetaModels/Dca/Helper.php(137): array_keys('Alias der Refer...')
    #2 composer/vendor/metamodels/core/src/system/modules/metamodels/MetaModels/Dca/Attribute.php(93): MetaModels\Dca\Helper->makeMultiColumnName(Object(MetaModels\MetaModel), 'Sprache', 'Beschreibung', true, 'Alias der Refer...')
    #3 composer/vendor/metamodels/core/src/system/modules/metamodels/MetaModels/Dca/Attribute.php(133): MetaModels\Dca\Attribute->setNameAndDescription(Object(MetaModels\MetaModel), Object(MetaModels\Attribute\Alias\Alias))
    #4 composer/vendor/metamodels/dc_general/system/modules/generalDriver/DcGeneral/Callbacks/ContaoStyleCallbacks.php(425): MetaModels\Dca\Attribute->onLoadCallback(Object(DC_General))
    #5 composer/vendor/metamodels/dc_general/system/modules/generalDriver/DcGeneral/DC_General.php(342): DcGeneral\Callbacks\ContaoStyleCallbacks->onloadCallback('tl_metamodel_at...')
    #6 system/modules/core/classes/Backend.php(258): DcGeneral\DC_General->__construct('tl_metamodel_at...', Array)
    #7 contao/main.php(136): Contao\Backend->getBackendModule('metamodels')
    #8 contao/main.php(287): Main->run()
    #9 {main}
    
    Warning: Invalid argument supplied for foreach() in composer/vendor/metamodels/core/src/system/modules/metamodels/MetaModels/Dca/Helper.php on line 137
    #0 composer/vendor/metamodels/core/src/system/modules/metamodels/MetaModels/Dca/Helper.php(137): __error(2, 'Invalid argumen...', '/var/www/virtua...', 137, Array)
    #1 composer/vendor/metamodels/core/src/system/modules/metamodels/MetaModels/Dca/Attribute.php(93): MetaModels\Dca\Helper->makeMultiColumnName(Object(MetaModels\MetaModel), 'Sprache', 'Beschreibung', true, 'Alias der Refer...')
    #2 composer/vendor/metamodels/core/src/system/modules/metamodels/MetaModels/Dca/Attribute.php(133): MetaModels\Dca\Attribute->setNameAndDescription(Object(MetaModels\MetaModel), Object(MetaModels\Attribute\Alias\Alias))
    #3 composer/vendor/metamodels/dc_general/system/modules/generalDriver/DcGeneral/Callbacks/ContaoStyleCallbacks.php(425): MetaModels\Dca\Attribute->onLoadCallback(Object(DC_General))
    #4 composer/vendor/metamodels/dc_general/system/modules/generalDriver/DcGeneral/DC_General.php(342): DcGeneral\Callbacks\ContaoStyleCallbacks->onloadCallback('tl_metamodel_at...')
    #5 system/modules/core/classes/Backend.php(258): DcGeneral\DC_General->__construct('tl_metamodel_at...', Array)
    #6 contao/main.php(136): Contao\Backend->getBackendModule('metamodels')
    #7 contao/main.php(287): Main->run()
    #8 {main}
    
    Warning: array_keys() expects parameter 1 to be array, string given in composer/vendor/metamodels/attribute_translatedtabletext/src/system/modules/metamodelsattribute_translatedtabletext/TableMetaModelsAttributeTranslatedTableText.php on line 167
    #0 [internal function]: __error(2, 'array_keys() ex...', '/var/www/virtua...', 167, Array)
    #1 composer/vendor/metamodels/attribute_translatedtabletext/src/system/modules/metamodelsattribute_translatedtabletext/TableMetaModelsAttributeTranslatedTableText.php(167): array_keys('Referenzalias')
    #2 composer/vendor/metamodels/dc_general/system/modules/generalDriver/DcGeneral/Callbacks/ContaoStyleCallbacks.php(425): TableMetaModelsAttributeTranslatedTableText->loadTableTextCols(Object(DC_General))
    #3 composer/vendor/metamodels/dc_general/system/modules/generalDriver/DcGeneral/DC_General.php(342): DcGeneral\Callbacks\ContaoStyleCallbacks->onloadCallback('tl_metamodel_at...')
    #4 system/modules/core/classes/Backend.php(258): DcGeneral\DC_General->__construct('tl_metamodel_at...', Array)
    #5 contao/main.php(136): Contao\Backend->getBackendModule('metamodels')
    #6 contao/main.php(287): Main->run()
    #7 {main}
    
    Warning: Invalid argument supplied for foreach() in composer/vendor/metamodels/attribute_translatedtabletext/src/system/modules/metamodelsattribute_translatedtabletext/TableMetaModelsAttributeTranslatedTableText.php on line 167
    #0 composer/vendor/metamodels/attribute_translatedtabletext/src/system/modules/metamodelsattribute_translatedtabletext/TableMetaModelsAttributeTranslatedTableText.php(167): __error(2, 'Invalid argumen...', '/var/www/virtua...', 167, Array)
    #1 composer/vendor/metamodels/dc_general/system/modules/generalDriver/DcGeneral/Callbacks/ContaoStyleCallbacks.php(425): TableMetaModelsAttributeTranslatedTableText->loadTableTextCols(Object(DC_General))
    #2 composer/vendor/metamodels/dc_general/system/modules/generalDriver/DcGeneral/DC_General.php(342): DcGeneral\Callbacks\ContaoStyleCallbacks->onloadCallback('tl_metamodel_at...')
    #3 system/modules/core/classes/Backend.php(258): DcGeneral\DC_General->__construct('tl_metamodel_at...', Array)
    #4 contao/main.php(136): Contao\Backend->getBackendModule('metamodels')
    #5 contao/main.php(287): Main->run()
    #6 {main}
    
    Warning: Cannot modify header information - headers already sent by (output started at /neu/htdocs/system/helper/functions.php:70) in system/modules/core/library/Contao/Template.php on line 298
    #0 [internal function]: __error(2, 'Cannot modify h...', '/var/www/virtua...', 298, Array)
    #1 system/modules/core/library/Contao/Template.php(298): header('Vary: User-Agen...', false)
    #2 system/modules/core/classes/BackendTemplate.php(162): Contao\Template->output()
    #3 contao/main.php(278): Contao\BackendTemplate->output()
    #4 contao/main.php(140): Main->output()
    #5 contao/main.php(287): Main->run()
    #6 {main}
    
    Warning: Cannot modify header information - headers already sent by (output started at /neu/htdocs/system/helper/functions.php:70) in system/modules/core/library/Contao/Template.php on line 299
    #0 [internal function]: __error(2, 'Cannot modify h...', '/var/www/virtua...', 299, Array)
    #1 system/modules/core/library/Contao/Template.php(299): header('Content-Type: t...')
    #2 system/modules/core/classes/BackendTemplate.php(162): Contao\Template->output()
    #3 contao/main.php(278): Contao\BackendTemplate->output()
    #4 contao/main.php(140): Main->output()
    #5 contao/main.php(287): Main->run()
    #6 {main}
    Alle anderen Bereiche funktionieren einwandfrei.
    Contao ist super!

  2. #2
    Contao-Urgestein
    Registriert seit
    07.07.2009.
    Beiträge
    4.107

    Standard

    Ich habe dein Thread mal in das MetaModels Subforum verschoben, mit Composer hat das wahrlich nichts zu tun.

  3. #3
    Contao-Urgestein
    Registriert seit
    07.07.2009.
    Beiträge
    4.107

    Standard

    Hast du nachträglich das MetaModels auf "Übersetzt" gestellt? Vorher war es wahrscheinlich einsprachig und wurde dann mehrsprachig?

  4. #4
    Contao-Nutzer
    Registriert seit
    16.06.2012.
    Ort
    NRW
    Beiträge
    61

    Standard

    Es kann sein, das ich daran "rumgespielt" habe. Also die Metamodels wurden definitiv auf deutsch angelegt und es ist möglich, das ich es mal raus genommen habe und dann wieder zurückgesetzt habe, weil ich irgendwas ausprobieren wollte

    Allein, das erzeugt schon diesen Fehler? Mit anderen Worten, ich muss die Metamodels nochmal neu anlegen?

    Ich habe auch die lokale Version nochmal komplett auf den Webserver überspielt und darin besteht der Fehler dann auf dem Webserver auch schon.

    Wie gesagt, auf dem lokalen Server kommt die Fehlermeldung nicht, aber auf unserem Online-Webserver - gibts da vielleicht eine Lösung das zu fixen? Irgendwas in die DB nachtragen, was jetzt fehlt?
    Contao ist super!

  5. #5
    Contao-Urgestein
    Registriert seit
    07.07.2009.
    Beiträge
    4.107

    Standard

    Zitat Zitat von TheBrainer Beitrag anzeigen
    Es kann sein, das ich daran "rumgespielt" habe. Also die Metamodels wurden definitiv auf deutsch angelegt und es ist möglich, das ich es mal raus genommen habe und dann wieder zurückgesetzt habe, weil ich irgendwas ausprobieren wollte
    Wenn du es ausprobieren wolltest, dann musst du auch mit Fehlern rechnen. Sowas sollte man auch nur auf Testinstallationen machen die man wieder löschen und neu anlegen kann.

    Am besten löscht du den MetaModel komplett und fängst neu an. Und dieses mal musst du dir von Anfang an überlegen ob du Mehrsprachigkeit wünschst, oder nicht

  6. #6
    Contao-Urgestein Avatar von KlausGrenoble
    Registriert seit
    27.01.2013.
    Ort
    Grenoble
    Beiträge
    2.362

    Standard

    https://community.contao.org/de/show...l=1#post272466
    Ansonsten ist es nachträglich schwierig bis unmöglich...

  7. #7
    Contao-Nutzer
    Registriert seit
    16.06.2012.
    Ort
    NRW
    Beiträge
    61

    Standard

    Mit anderen Worten:

    Wenn ich keine Mehrsprachigkeit benötige setze ich beim Anlegen der Metamodels einfach auch den Haken bei "Übersetzung" von Anfang an gar nicht!? Richtig?
    Contao ist super!

  8. #8
    Contao-Nutzer
    Registriert seit
    16.06.2012.
    Ort
    NRW
    Beiträge
    61

    Standard

    Ich nehme mir gerade dieses Projekt wieder vor.

    Folgende Schritte wie immer: Paketverwaltung -> Updates installieren + Datenbank aktualisieren

    Und was muss ich feststellen!? Der Fehler ist weg!!!

    Was auch immer ihr gemacht habt, alle Fehler der Mehrsprachigkeit sind jetzt bei mir raus, die durch das "rumspielen" an den Einstellungen der einzelnen MM verursacht wurden.

    Vielen Dank dafür, das spart mir locker einen Tag Arbeit damit!

    Ganz großes Lob und vielen Dank an die MM-Entwickler.
    Contao ist super!

  9. #9
    Contao-Nutzer
    Registriert seit
    14.04.2010.
    Beiträge
    128

    Standard MetaModels Mehrsprachigkeit Umstellung reparieren

    Ich hatte ein ähnliches Problem. Allerdings hab ich die Einstellung "Mehrsprachigkeit" ganz am Anfang mal geändert. Lange lief es problemlos. Aber plötzlich kam ohne erkennbaren Grund eine Fehlermeldung im Backend. Neue Version / Datenbank aktualisieren hat bei mir nichts geholfen. Dann hab ich gesehen, dass der Fehler mit translatedtext zu tun haben soll, obwohl ich den Feldtyp / Attribut gar nicht verwende.
    Als Feld wurde mir mein "Titel" angegeben. Also hab ich das Attribut einfach nochmal neu abgespeichert und es lief wieder. Komischerweise ging es aber nur mit "Speichern und schliessen", bei nur "Speichern" kam ein Fehler.

    Wenn man noch keine (oder nicht viele) Datensätze angelegt hat, lässt sich MM nach dem Ändern dieser Einstellung vermutlich schon wieder "reparieren". Aber je mehr Felder, verknüpfte MMs und Datensätze, desto schwieriger wird es natürlich.

    PS: Ein Blick in die Datenbanktabellen von MM kann auch weiterhelfen. Bei mir wurde ein serialized Array erwartet, in der DB stand aber nur der String "Titel". Hätte man auch manuell in der DB erledigen können. Das Speichern und Schliessen hat's aber auch getan.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •