CType='image'でtt_contentから生成されたすべてのオブジェクトのリストを必要とするExtbaseバックエンドモジュールを作成したいと思います。
今、私は単純なモデルを定義し始めました
class Tx_Myextension_Domain_Model_Content extends Tx_Extbase_DomainObject_AbstractEntity
{
/**
* @var string
*/
protected $header;
/**
* @return the $header
*/
public function getHeader()
{
return $this->header;
}
/**
* @param string $header
*/
public function setHeader($header)
{
$this->header = $header;
}
}
およびリポジトリ
class Tx_Myextension_Domain_Repository_ContentRepository extends Tx_Extbase_Persistence_Repository
{
public function initializeObject()
{
$querySettings = $this->objectManager->create('Tx_Extbase_Persistence_Typo3QuerySettings');
$querySettings->setRespectStoragePage(FALSE);
$this->setDefaultQuerySettings($querySettings);
}
}
私の知る限り、initializeObjectメソッドは、どのpidを使用しているかに関係なく、すべてのコンテンツ要素を取得する方法です。
最後に、コンテンツクラスをtt_contentにマップしようとしました。
plugin.tx_myextension {
persistence {
classes {
Tx_Myextension_Domain_Model_Content {
mapping {
tableName = tt_content
recordType = Tx_Myextension_Domain_Model_Content
columns {
header.mapOnProperty = header
}
}
}
}
}
}
module.tx_myextension {
persistence < plugin.tx_myextension.persistence
}
いいえ、レポを使いたいです。例:countAll。残念ながら、常に0を返します。MySQLクエリを探すと、問題が見つかります。
SELECT COUNT(*)
FROM tt_content
WHERE (tt_content.CType='Tx_Myextension_Domain_Model_Content')
AND tt_content.deleted=0 AND tt_content.hidden=0
AND (tt_content.starttime<=1313073660)
AND (tt_content.endtime=0 OR tt_content.endtime>1313073660)
AND tt_content.sys_language_uid IN (0,-1)
AND tt_content.pid IN (0)
Typo 3またはExtbaseまたは何か別のものが、これらすべてのwhere句をクエリに追加しました。CType句とpid句を削除したいだけです。私が言ったように、私はレポで使用されている方法がpidを無視することにつながると思いましたが、明らかにそうではありません。
誰かが私を助けることができますか?私が欲しいのは、画像コンテンツ要素の配列です。前もって感謝します。