Contao-Camp 2024
Ergebnis 1 bis 27 von 27

Thema: Newslist wirft fehler...

  1. #1
    Contao-Fan Avatar von Gassi
    Registriert seit
    18.11.2009.
    Ort
    Konstanz
    Beiträge
    423

    Standard Newslist wirft fehler...

    Hallo,
    ich habe auf der Startseite eine Newsliste eingebaut die funktioniert auch.
    Ich habe die selbe nun auf einer Unterseite eingebaut - dort wirft contao eine Fehlermeldung und eine Fehlerseite:
    HTML-Code:
    [2019-08-14 17:51:50] app.CRITICAL: An exception occurred. {"exception":"[object] (Doctrine\\DBAL\\Exception\\InvalidFieldNameException(code: 0): 
    An exception occurred while executing 'SELECT tl_news.* FROM tl_news WHERE tl_news.pid IN(1,62,63,64) AND (tl_news.start='' OR tl_news.start<='1565797860') 
    AND (tl_news.stop='' OR tl_news.stop>'1565797920') AND tl_news.published='1' ORDER BY order_date_asc LIMIT 0,3':\n\nSQLSTATE[42S22]: Column not found: 1054 Unknown column 'order_date_asc' in 'order clause' at /is/htdocs/wp1140763_71ZTH1OPYN/www/.../vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php:80, Doctrine\\DBAL\\Driver\\PDOException(code: 42S22): SQLSTATE[42S22]: 
    Column not found: 1054 Unknown column 'order_date_asc' in 'order clause' at /is/htdocs/.../vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:109, PDOException(code: 42S22): SQLSTATE[42S22]: Column not found: 1054 Unknown column 'order_date_asc' in 'order clause' at /is/htdocs/wp1140763_71ZTH1OPYN/www/.../vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:107)"} []
    Contao version 4.4.41 - news_related ist noch zusätzlich installiert.

    Danke und Gruss Gassi

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Benutze die app_dev.php und poste den kompletten Stack Trace. Vermutlich liegt das an einer Extension.

  3. #3
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.548
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hast Du das Contao Installtool aufgerufen und kontrolliert, ob die Datenbank aktuell ist?
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  4. #4
    Contao-Fan Avatar von Gassi
    Registriert seit
    18.11.2009.
    Ort
    Konstanz
    Beiträge
    423

    Standard

    Also Datenbank update gibt es keines - daran liegts nicht... Ich habe aber leider keinen SSH Zugriff :-(
    Wie mache ich das dann am besten?

    Gruss Gassi

  5. #5
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Führe
    Code:
    vendor/bin/contao-console contao:install-web-dir --user=…
    lokal aus und kopiere dann die erzeugte .env Datei auf den Server, um dann auf die app_dev.php zugreifen zu können.

  6. #6
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.548
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Du könntest Dir den SHA-512 Hash z. B. auch via https://www.hashgenerator.de/ erstellen und in der .env (welche Du selbst im Contao Rootverzeichnis erstellen musst) speichern:

    Schema: BENUTERZNAME:PASSWORT

    Beispiel: k.jones:kevinjones
    SHA-512 Hash: d5fe22bf96e3f0c076d2f685aadf4841c272f6341662f45fdf 61e7fe0d91be4fe243187219d537db4a0e50250f5b66d3ba08 da87f922f564cf1cffb1c4c9cfa7
    Geändert von xchs (16.08.2019 um 11:51 Uhr)
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  7. #7
    Contao-Fan Avatar von Gassi
    Registriert seit
    18.11.2009.
    Ort
    Konstanz
    Beiträge
    423

    Standard

    Habs hinbekommen:
    Code:
     (1/1) RuntimeException
    
    The autoloader expected class "XRayLP\Bundle\FlickitySliderBundle\DependencyInjection\FlickitySliderExtension" to be defined in file "/is/htdocs/www//vendor/composer/../xraylp/contao-flickity-slider/src/DependencyInjection/FlickitySliderExtension.php". The file was found but the class was not in it, the class name or namespace probably has a typo.
    in DebugClassLoader.php line 213
    at DebugClassLoader->checkClass('XRayLP\\Bundle\\FlickitySliderBundle\\DependencyInjection\\FlickitySliderExtension', '/is/htdocs/www/proj3/vendor/composer/../xraylp/contao-flickity-slider/src/DependencyInjection/FlickitySliderExtension.php')in DebugClassLoader.php line 166
    at DebugClassLoader->loadClass('XRayLP\\Bundle\\FlickitySliderBundle\\DependencyInjection\\FlickitySliderExtension')
    at spl_autoload_call('XRayLP\\Bundle\\FlickitySliderBundle\\DependencyInjection\\FlickitySliderExtension')
    at class_exists('XRayLP\\Bundle\\FlickitySliderBundle\\DependencyInjection\\FlickitySliderExtension')in Bundle.php line 203
    at Bundle->createContainerExtension()in Bundle.php line 70
    at Bundle->getContainerExtension()in Kernel.php line 787
    at Kernel->prepareContainer(object(ContainerBuilder))in Kernel.php line 768
    at Kernel->buildContainer()in Kernel.php line 636
    at Kernel->initializeContainer()in ContaoKernel.php line 214
    at ContaoKernel->initializeContainer()in Kernel.php line 135
    at Kernel->boot()in Kernel.php line 195
    at Kernel->handle(object(Request))in app_dev.php line 69

  8. #8
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Hm, das hat jetzt aber mit deinem ursprünglichen Fehler nichts zu tun?

  9. #9
    Contao-Fan Avatar von Gassi
    Registriert seit
    18.11.2009.
    Ort
    Konstanz
    Beiträge
    423

    Standard

    Hab mal den Slider deinstalliert - keine Änderung :-(
    Und nu?
    Geändert von Gassi (16.08.2019 um 12:23 Uhr)

  10. #10
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Und was für ein Fehler kommt jetzt?

  11. #11
    Contao-Fan Avatar von Gassi
    Registriert seit
    18.11.2009.
    Ort
    Konstanz
    Beiträge
    423

    Standard

    Stack Trace:

    Code:
    Doctrine\DBAL\Exception\InvalidFieldNameException:
    An exception occurred while executing 'SELECT tl_news.* FROM tl_news WHERE tl_news.pid IN(1) AND (tl_news.start='' OR tl_news.start<='1565951040') AND (tl_news.stop='' OR tl_news.stop>'1565951100') AND tl_news.published='1' ORDER BY order_date_asc LIMIT 0,3':
    
    SQLSTATE[42S22]: Column not found: 1054 Unknown column 'order_date_asc' in 'order clause'
    
      at vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php:80
      at Doctrine\DBAL\Driver\AbstractMySQLDriver->convertException('An exception occurred while executing \'SELECT tl_news.* FROM tl_news WHERE tl_news.pid IN(1) AND (tl_news.start=\'\' OR tl_news.start&lt;=\'1565951040\') AND (tl_news.stop=\'\' OR tl_news.stop&gt;\'1565951100\') AND tl_news.published=\'1\' ORDER BY order_date_asc LIMIT 0,3\':SQLSTATE[42S22]: Column not found: 1054 Unknown column \'order_date_asc\' in \'order clause\'', object(PDOException))
         (vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php:184)
      at Doctrine\DBAL\DBALException::wrapException(object(Driver), object(PDOException), 'An exception occurred while executing \'SELECT tl_news.* FROM tl_news WHERE tl_news.pid IN(1) AND (tl_news.start=\'\' OR tl_news.start&lt;=\'1565951040\') AND (tl_news.stop=\'\' OR tl_news.stop&gt;\'1565951100\') AND tl_news.published=\'1\' ORDER BY order_date_asc LIMIT 0,3\':SQLSTATE[42S22]: Column not found: 1054 Unknown column \'order_date_asc\' in \'order clause\'')
         (vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php:158)
      at Doctrine\DBAL\DBALException::driverExceptionDuringQuery(object(Driver), object(PDOException), 'SELECT tl_news.* FROM tl_news WHERE tl_news.pid IN(1) AND (tl_news.start=\'\' OR tl_news.start&lt;=\'1565951040\') AND (tl_news.stop=\'\' OR tl_news.stop&gt;\'1565951100\') AND tl_news.published=\'1\' ORDER BY order_date_asc LIMIT 0,3', array())
         (vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php:943)
      at Doctrine\DBAL\Connection->executeQuery('SELECT tl_news.* FROM tl_news WHERE tl_news.pid IN(1) AND (tl_news.start=\'\' OR tl_news.start&lt;=\'1565951040\') AND (tl_news.stop=\'\' OR tl_news.stop&gt;\'1565951100\') AND tl_news.published=\'1\' ORDER BY order_date_asc LIMIT 0,3')
         (vendor/contao/core-bundle/src/Resources/contao/library/Contao/Database/Statement.php:276)
      at Contao\Database\Statement->query()
         (vendor/contao/core-bundle/src/Resources/contao/library/Contao/Database/Statement.php:250)
      at Contao\Database\Statement->execute(null)
         (vendor/contao/core-bundle/src/Resources/contao/library/Contao/Model.php:1088)
      at Contao\Model::find(array('column' => array('tl_news.pid IN(1)', '(tl_news.start=\'\' OR tl_news.start&lt;=\'1565951040\') AND (tl_news.stop=\'\' OR tl_news.stop&gt;\'1565951100\') AND tl_news.published=\'1\''), 'value' => null, 'return' => 'Collection', 'order' => 'order_date_asc', 'limit' => '3', 'offset' => 0, 'table' => 'tl_news'))
         (vendor/contao/core-bundle/src/Resources/contao/library/Contao/Model.php:959)
      at Contao\Model::findBy(array('tl_news.pid IN(1)', '(tl_news.start=\'\' OR tl_news.start&lt;=\'1565951040\') AND (tl_news.stop=\'\' OR tl_news.stop&gt;\'1565951100\') AND tl_news.published=\'1\''), null, array('column' => array('tl_news.pid IN(1)', '(tl_news.start=\'\' OR tl_news.start&lt;=\'1565951040\') AND (tl_news.stop=\'\' OR tl_news.stop&gt;\'1565951100\') AND tl_news.published=\'1\''), 'value' => null, 'return' => 'Collection', 'order' => 'order_date_asc', 'limit' => '3', 'offset' => 0))
         (vendor/contao/news-bundle/src/Resources/contao/models/NewsModel.php:238)
      at Contao\NewsModel::findPublishedByPids(array('1'), null, '3', 0, array('order' => 'order_date_asc', 'limit' => '3', 'offset' => 0))
         (system/modules/pct_autogrid/PCT/AutoGrid/AutoGrid.php:1602)
      at PCT\AutoGrid\AutoGrid->applyNewsSorting(array('1'), null, '3', 0, object(ModuleNewsList))
         (vendor/contao/news-bundle/src/Resources/contao/modules/ModuleNewsList.php:199)
      at Contao\ModuleNewsList->fetchItems(array('1'), null, '3', 0)
         (vendor/contao/news-bundle/src/Resources/contao/modules/ModuleNewsList.php:141)
      at Contao\ModuleNewsList->compile()
         (vendor/contao/core-bundle/src/Resources/contao/modules/Module.php:220)
      at Contao\Module->generate()
         (vendor/contao/news-bundle/src/Resources/contao/modules/ModuleNewsList.php:62)
      at Contao\ModuleNewsList->generate()
         (vendor/contao/core-bundle/src/Resources/contao/elements/ContentModule.php:68)
      at Contao\ContentModule->generate()
         (vendor/contao/core-bundle/src/Resources/contao/library/Contao/Controller.php:480)
      at Contao\Controller::getContentElement(object(ContentModel), 'main')
         (vendor/contao/core-bundle/src/Resources/contao/modules/ModuleArticle.php:183)
      at Contao\ModuleArticle->compile()
         (vendor/contao/core-bundle/src/Resources/contao/modules/Module.php:220)
      at Contao\Module->generate()
         (vendor/contao/core-bundle/src/Resources/contao/modules/ModuleArticle.php:65)
      at Contao\ModuleArticle->generate(false)
         (vendor/contao/core-bundle/src/Resources/contao/library/Contao/Controller.php:420)
      at Contao\Controller::getArticle(object(ArticleModel), false, false, 'main')
         (vendor/contao/core-bundle/src/Resources/contao/library/Contao/Controller.php:279)
      at Contao\Controller::getFrontendModule('0', 'main')
         (vendor/contao/core-bundle/src/Resources/contao/pages/PageRegular.php:174)
      at Contao\PageRegular->prepare(object(PageModel))
         (vendor/contao/core-bundle/src/Resources/contao/pages/PageRegular.php:47)
      at Contao\PageRegular->getResponse(object(PageModel), true)
         (vendor/contao/core-bundle/src/Resources/contao/controllers/FrontendIndex.php:306)
      at Contao\FrontendIndex->renderPage(object(Collection))
         (vendor/contao/core-bundle/src/Resources/contao/controllers/FrontendIndex.php:75)
      at Contao\FrontendIndex->run()
         (vendor/contao/core-bundle/src/Controller/FrontendController.php:42)
      at Contao\CoreBundle\Controller\FrontendController->indexAction()
         (vendor/symfony/symfony/src/Symfony/Component/HttpKernel/HttpKernel.php:151)
      at Symfony\Component\HttpKernel\HttpKernel->handleRaw(object(Request), 1)
         (vendor/symfony/symfony/src/Symfony/Component/HttpKernel/HttpKernel.php:68)
      at Symfony\Component\HttpKernel\HttpKernel->handle(object(Request), 1, true)
         (vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php:200)
      at Symfony\Component\HttpKernel\Kernel->handle(object(Request))
         (web/app_dev.php:69)
    Exceptions
    Code:
    Doctrine\DBAL\Exception\ InvalidFieldNameException
    in vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php (line 80)
    AbstractMySQLDriver->convertException('An exception occurred while executing \'SELECT tl_news.* FROM tl_news WHERE tl_news.pid IN(1) AND (tl_news.start=\'\' OR tl_news.start<=\'1565951040\') AND (tl_news.stop=\'\' OR tl_news.stop>\'1565951100\') AND tl_news.published=\'1\' ORDER BY order_date_asc LIMIT 0,3\':SQLSTATE[42S22]: Column not found: 1054 Unknown column \'order_date_asc\' in \'order clause\'', object(PDOException)) in vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php (line 184)
    DBALException::wrapException(object(Driver), object(PDOException), 'An exception occurred while executing \'SELECT tl_news.* FROM tl_news WHERE tl_news.pid IN(1) AND (tl_news.start=\'\' OR tl_news.start<=\'1565951040\') AND (tl_news.stop=\'\' OR tl_news.stop>\'1565951100\') AND tl_news.published=\'1\' ORDER BY order_date_asc LIMIT 0,3\':SQLSTATE[42S22]: Column not found: 1054 Unknown column \'order_date_asc\' in \'order clause\'') in vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php (line 158)
    DBALException::driverExceptionDuringQuery(object(Driver), object(PDOException), 'SELECT tl_news.* FROM tl_news WHERE tl_news.pid IN(1) AND (tl_news.start=\'\' OR tl_news.start<=\'1565951040\') AND (tl_news.stop=\'\' OR tl_news.stop>\'1565951100\') AND tl_news.published=\'1\' ORDER BY order_date_asc LIMIT 0,3', array()) in vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php (line 943)
    Connection->executeQuery('SELECT tl_news.* FROM tl_news WHERE tl_news.pid IN(1) AND (tl_news.start=\'\' OR tl_news.start<=\'1565951040\') AND (tl_news.stop=\'\' OR tl_news.stop>\'1565951100\') AND tl_news.published=\'1\' ORDER BY order_date_asc LIMIT 0,3') in vendor/contao/core-bundle/src/Resources/contao/library/Contao/Database/Statement.php (line 276)
    Statement->query() in vendor/contao/core-bundle/src/Resources/contao/library/Contao/Database/Statement.php (line 250)
    Statement->execute(null) in vendor/contao/core-bundle/src/Resources/contao/library/Contao/Model.php (line 1088)
    Model::find(array('column' => array('tl_news.pid IN(1)', '(tl_news.start=\'\' OR tl_news.start<=\'1565951040\') AND (tl_news.stop=\'\' OR tl_news.stop>\'1565951100\') AND tl_news.published=\'1\''), 'value' => null, 'return' => 'Collection', 'order' => 'order_date_asc', 'limit' => '3', 'offset' => 0, 'table' => 'tl_news')) in vendor/contao/core-bundle/src/Resources/contao/library/Contao/Model.php (line 959)
    Model::findBy(array('tl_news.pid IN(1)', '(tl_news.start=\'\' OR tl_news.start<=\'1565951040\') AND (tl_news.stop=\'\' OR tl_news.stop>\'1565951100\') AND tl_news.published=\'1\''), null, array('column' => array('tl_news.pid IN(1)', '(tl_news.start=\'\' OR tl_news.start<=\'1565951040\') AND (tl_news.stop=\'\' OR tl_news.stop>\'1565951100\') AND tl_news.published=\'1\''), 'value' => null, 'return' => 'Collection', 'order' => 'order_date_asc', 'limit' => '3', 'offset' => 0)) in vendor/contao/news-bundle/src/Resources/contao/models/NewsModel.php (line 238)
    NewsModel::findPublishedByPids(array('1'), null, '3', 0, array('order' => 'order_date_asc', 'limit' => '3', 'offset' => 0)) in system/modules/pct_autogrid/PCT/AutoGrid/AutoGrid.php (line 1602)
    
                }
                
                // add sorting
                $arrOptions['order'] = $objModule->news_order ?: 'sorting';
                
                return \NewsModel::findPublishedByPids($arrArchives, $blnFeatured, $limit, $offset, $arrOptions);
             }
        } 
    
    AutoGrid->applyNewsSorting(array('1'), null, '3', 0, object(ModuleNewsList)) in vendor/contao/news-bundle/src/Resources/contao/modules/ModuleNewsList.php (line 199)
    ModuleNewsList->fetchItems(array('1'), null, '3', 0) in vendor/contao/news-bundle/src/Resources/contao/modules/ModuleNewsList.php (line 141)
    ModuleNewsList->compile() in vendor/contao/core-bundle/src/Resources/contao/modules/Module.php (line 220)
    Module->generate() in vendor/contao/news-bundle/src/Resources/contao/modules/ModuleNewsList.php (line 62)
    ModuleNewsList->generate() in vendor/contao/core-bundle/src/Resources/contao/elements/ContentModule.php (line 68)
    ContentModule->generate() in vendor/contao/core-bundle/src/Resources/contao/library/Contao/Controller.php (line 480)
    Controller::getContentElement(object(ContentModel), 'main') in vendor/contao/core-bundle/src/Resources/contao/modules/ModuleArticle.php (line 183)
    ModuleArticle->compile() in vendor/contao/core-bundle/src/Resources/contao/modules/Module.php (line 220)
    Module->generate() in vendor/contao/core-bundle/src/Resources/contao/modules/ModuleArticle.php (line 65)
    ModuleArticle->generate(false) in vendor/contao/core-bundle/src/Resources/contao/library/Contao/Controller.php (line 420)
    Controller::getArticle(object(ArticleModel), false, false, 'main') in vendor/contao/core-bundle/src/Resources/contao/library/Contao/Controller.php (line 279)
    Controller::getFrontendModule('0', 'main') in vendor/contao/core-bundle/src/Resources/contao/pages/PageRegular.php (line 174)
    PageRegular->prepare(object(PageModel)) in vendor/contao/core-bundle/src/Resources/contao/pages/PageRegular.php (line 47)
    PageRegular->getResponse(object(PageModel), true) in vendor/contao/core-bundle/src/Resources/contao/controllers/FrontendIndex.php (line 306)
    FrontendIndex->renderPage(object(Collection)) in vendor/contao/core-bundle/src/Resources/contao/controllers/FrontendIndex.php (line 75)
    FrontendIndex->run() in vendor/contao/core-bundle/src/Controller/FrontendController.php (line 42)
    FrontendController->indexAction() in vendor/symfony/symfony/src/Symfony/Component/HttpKernel/HttpKernel.php (line 151)
    HttpKernel->handleRaw(object(Request), 1) in vendor/symfony/symfony/src/Symfony/Component/HttpKernel/HttpKernel.php (line 68)
    HttpKernel->handle(object(Request), 1, true) in vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php (line 200)
    Kernel->handle(object(Request)) in web/app_dev.php (line 69)

  12. #12
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Du scheinst ein PCT Theme einzusetzen. Der Fehler wird durch ein PCT Modul verursacht:
    Code:
      at Contao\NewsModel::findPublishedByPids(array('1'), null, '3', 0, array('order' => 'order_date_asc', 'limit' => '3', 'offset' => 0))
         (system/modules/pct_autogrid/PCT/AutoGrid/AutoGrid.php:1602)

  13. #13
    Contao-Fan Avatar von Gassi
    Registriert seit
    18.11.2009.
    Ort
    Konstanz
    Beiträge
    423

    Standard

    Hey Spooky,

    ja das stimmt... komsich - dann frag ich mal den Tim! Danke für die Info!!!

    Grüsse Gassi

  14. #14
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Sind deine PCT Module auf dem neuesten Stand? Denk dran, dass du die alten Module löschen musst, bevor die neuen Module in das system/modules Verzeichnis kopierst. Und danach musst du den Ordner var/cache löschen und den Symfony Application Cache neu aufbauen.

  15. #15
    Contao-Fan Avatar von Gassi
    Registriert seit
    18.11.2009.
    Ort
    Konstanz
    Beiträge
    423

    Standard

    Hey,
    habe die Installation vor 2 Wochen gemacht -daher sollte es das neueste PCT sein.
    habe Antwort:

    "order_date_asc ist kein valides Tabellenfeld oder Contao-Standard, der berücksichtigt wird -> das erzeugt den Fehler. "

    "Ausgehen von dieser Erw: https://github.com/fritzmg/contao-ne...Model.php#L114
    Hier wird der Wert gegen eine reale Spalte in der Datenbank überschrieben."

    "Falls vorher der order Array bereits gesetzt wurde im Hook-Parameter, soll dieser nicht mehr angepackt werden"

    Jetzt wirds glaub kompliziert.
    Gibts Alternativen für news related?

    Gruss Gassi

  16. #16
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Der Fehler liegt in system/modules/pct_autogrid/PCT/AutoGrid/AutoGrid.php, Zeile 1600. Dort wird folgendes ausgeführt:
    PHP-Code:
    $arrOptions['order'] = $objModule->news_order ?: 'sorting'
    In $objModule->news_order befindet sich aber einer dieser Strings: https://github.com/contao/contao/blo...odule.php#L239 (in Contao 4.4 sind es weniger).

  17. #17
    Contao-Fan Avatar von Gassi
    Registriert seit
    18.11.2009.
    Ort
    Konstanz
    Beiträge
    423

    Standard

    Hab ja das befolgt in der autogrid.php ... aber hat leider nichts gebracht:
    Code:
    	if( empty($arrOptions['order']))
    		{
    			// add manualSorting
    			$arrOptions['order'] = $objModule->news_order ?: 'sorting';
    		}
    Gruss gassi

  18. #18
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Warum sollte das auch etwas bringen? Der Fehler bleibt ja bestehen.

  19. #19
    Contao-Fan Avatar von Gassi
    Registriert seit
    18.11.2009.
    Ort
    Konstanz
    Beiträge
    423

    Standard

    gute frage Spooky - so wurde es mir aufgetragen vom support :-)

    grüsse Gassi

  20. #20
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    $arrOptions['order'] muss halt mit so etwas wie "tl_news.date ASC" etc. befüllt werden. Nicht mit dem Wert aus dem Modul direkt. Siehe zB https://github.com/contao/contao/blo....php#L226-L248

  21. #21
    Contao-Urgestein Avatar von Tim G
    Registriert seit
    13.02.2010.
    Ort
    Lübeck
    Beiträge
    2.210
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von Spooky Beitrag anzeigen
    $arrOptions['order'] muss halt mit so etwas wie "tl_news.date ASC" etc. befüllt werden. Nicht mit dem Wert aus dem Modul direkt. Siehe zB https://github.com/contao/contao/blo....php#L226-L248
    Das ist leider nur die halbe Wahrheit. Der Speicherwert könnte durchaus auch kompatibel zur Arbeitsweise des Contao Models gewählt sein. Dafür habe ich mich bei AutoGrid in diesem Hook entschieden. Direktes Tabellenfeld und damit keine Psydo-Wertkonvertierung. Diese Freiheit des Entwicklers ohne Abhängigkeiten zu arbeiten erlaubt der Hook aber nicht.

    Der Contao Hook selbst ist ungünstig, weil er keine Werteüberführung erlaubt - dann wäre eine Abfrage, ob ein Wert bereits gesetzt wurde ein probates Mittel andere Erw. zu unterstützen ohne direkte Abhängigkeit. -> das wäre ein guter Hook.
    Der newsListFetchItems Hook feuert aber leider ein direktes return, wenn der Rückgabewert Teil eines Models ist.

    Ich sehe hier nur die Möglichkeit per autoload.ini die Ladereihenfolgen zu ändern oder die Hooks aus zu kommentieren in den Erweiterungen oder die Erweiterungen selbst müssten nachträglich mit Abhängigkeiten ausgestattet werden -> was aber gegen die Philosophie eines guten Hooks spricht und eine unnötige Abhängigkeit schafft. Da sollte eher die Basis kompatibel geschaffen werden.
    http://www.tim-gatzky.de ˙ auch schon wieder 2 Jahre alt - wie die Zeit vergeht... muss mal umbauen.

  22. #22
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Direktes Tabellenfeld ist ja ok, aber im Feld tl_module.news_order stehen keine Tabellenfelder sondern die oben erwähnten strings.

  23. #23
    Contao-Urgestein Avatar von Tim G
    Registriert seit
    13.02.2010.
    Ort
    Lübeck
    Beiträge
    2.210
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von Spooky Beitrag anzeigen
    Direktes Tabellenfeld ist ja ok, aber im Feld tl_module.news_order stehen keine Tabellenfelder sondern die oben erwähnten strings.
    Genau. Das ist das Problem . Diese "frei gewählten" Werte muss der Entwickler ersetzen, damit es kompatibel für Contaos Models wird. Bei zwei Erweiterungen entsteht hier eine Abhängigkeit, die unnötig wäre, wenn der Hook Werte weitergeben würde.

    Der return hier ungünstig. https://github.com/contao/contao/blo...sList.php#L212

    Besser wäre ist eine Werteübergabe z.B. das $arrOptions arrays, der an das Contao Model unten weitergegeben wird. Damit wäre dies übergreifend kompatibel.
    http://www.tim-gatzky.de ˙ auch schon wieder 2 Jahre alt - wie die Zeit vergeht... muss mal umbauen.

  24. #24
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Ja, jeder newsListFetchItems Hook muss die order entsprechend implementieren.

  25. #25
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Zitat Zitat von Tim G Beitrag anzeigen
    Der return hier ungünstig. https://github.com/contao/contao/blo...sList.php#L212

    Besser wäre ist eine Werteübergabe z.B. das $arrOptions arrays, der an das Contao Model unten weitergegeben wird. Damit wäre dies übergreifend kompatibel.
    Das ist halt nicht das Konzept des aktuellen Hooks.

    Aber du kannst ja einen Feature Request auf GitHub machen. Ich würde mir auch einen Hook wünschen, mit dem man im Prinzip nur das fertige $arrOptions Array eines Model Queries nochmal ändern kann. Das wäre dann allerdings ein Hook des Models - und da würde wiederum wieder die Modul Information fehlen.

  26. #26
    Contao-Fan Avatar von Gassi
    Registriert seit
    18.11.2009.
    Ort
    Konstanz
    Beiträge
    423

    Standard

    Hey,
    Danke für die rege Diskussion ... aber wenn ich das richtig sehe gibts jetzt hierfür keine einfache Lösung?!
    Ich habe jetzt mal die Sortierung manuell umgestellt - soweit läufts jetzt - aber die manuelle sortierung geht jetzt halt nicht mehr.

    Viele Grüße
    Gassi

  27. #27
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Zitat Zitat von Gassi Beitrag anzeigen
    Hey,
    Danke für die rege Diskussion ... aber wenn ich das richtig sehe gibts jetzt hierfür keine einfache Lösung?!
    Die Lösung ist, dass der newsListFetchItemsHook die richtige Sortierung setzen muss.

    Als workaround könntest du auch das Feld tl_module.news_sorting manuell aus der Datenbank löschen (falls vorhanden) und tl_module.news_order leeren für das betroffene News Modul.

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
  •