Ich habe hier einen merkwürdigen Effekt. In einem Repository wird eine query abgesetzt. Folgendes geht:

/**
 * Find by searchword
 *
 * @param  string $searchword searchword
 *
 * @return \TYPO3\CMS\Extbase\Persistence\Generic\QueryResult
 */
public function findBySearchword($searchword) {
$query = $this->createQuery();
$query->statement(
        'SELECT * FROM tx_myext_domain_model_mymodel
        WHERE (
                name LIKE "%' . $searchword . '%"
                OR shortname LIKE "%' . $searchword . '%"
        )
        AND hidden=0
        AND deleted=0
        AND ( starttime = 0 OR starttime >= currentTimestamp )
        AND ( endtime = 0 OR endtime < currentTimestamp )'
);
return $query->execute();




Folgendes liefert kein Ergebnis:

/**
 * Find by searchword
 *
 * @param  string $searchword searchword
 *
 * @return \TYPO3\CMS\Extbase\Persistence\Generic\QueryResult
 */
public function findBySearchword($searchword) {

$query = $this->createQuery();

$searchwordString = '"%' . $searchword . '%"';
                
$constraints[] = $query->like('name', $searchwordString);
$constraints[] = $query->like('shortname', $searchwordString);
                
$query->matching( $query->logicalOr($constraints) );
return $query->execute();
}

Es sollte beides eigentlich das gleiche machen, so weit ich es verstanden habe.

Liegt da ein Syntaxfehler vor?

Beste Grüße
Stefan

--
Bergische Webschmiede
Typo3 Dienstleistungen
:: Dipl.-Ing. Stefan Padberg
:: www.bergische-webschmiede.de

---
Diese E-Mail ist frei von Viren und Malware, denn der avast! Antivirus Schutz 
ist aktiv.
http://www.avast.com

_______________________________________________
TYPO3-german mailing list
[email protected]
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an