2014-10-04 122 views
3

我试图用三个额外的日期(时间戳)字段扩展扩展(新闻),并想在我的(新闻)fluidtemplate中调用这些。TYPO3 Extbase扩展现有的扩展使用自己的扩展模型?

我已经连接了一切到目前为止,我可以看到我的额外领域在后端没有选择extratype - 我已经modified ext_tables.php相应,并可以保存数据。

现在我试图在我的局部模板/列表/ Item.html使用下面的代码用在我的新闻fluidtemplate这些领域 - {} newsItem.datetime

我想我需要的TypoScript相适应的是,型号Tx_News_Domain_Model_News现在是

config.tx_extbase{ 
    persistence{ 
     classes{ 
      Tx_News_Domain_Model_News { 
       className = MyVendor\MyNews\Domain\Model\New 
      } 

      MyVendor\MyNews\Domain\Model\News { 
       mapping { 
        tableName = tx_news_domain_model_news 
        recordType = Tx_MyNews_News 
       } 
      } 
     } 
    }  
} 

但是,这似乎并没有工作 - 任何人谁在这里得到了解决。

回答

3

首先,你不一定需要扩展EXT:消息“正常的Extbase方式”。 EXT:新闻提供了一种扩展其他字段的方式,而不会覆盖其模型。它被记录在here

这种方式的好处是多重扩展仍然可以在不冲突的情况下扩展新闻。

如果你仍然想这样做“自己的方式”,你需要修复的配置如下:

plugin.tx_news { 
    objects { 
    Tx_News_Domain_Domain_News { 
     className = My\Extension\Domain\Model\News 
    } 
    } 
} 

这告诉Extbase使用你的模型类,而不是新闻模型类的。

config.tx_extbase.persistence.classes { 
    Visol\Newscatinvite\Domain\Model\News { 
     mapping { 
      tableName = tx_news_domain_model_news 
     } 
    } 
} 

这告诉Extbase使用您的模型的新闻表。

永远不要忘记清除所有系统缓存(类反射存储在数据库中)。如果您处于Development环境中,则您在后端具有“Flush系统缓存”。