有没有办法在TYPO3的扩展安装过程中创建对象/表条目?

时间:2016-04-23 09:21:56

标签: typo3

我想在安装扩展程序期间创建对象。例如,我有以下两个简单的域模型:

class Product extends AbstractEntity
{
   protected $name = '';
   protected $sku = '';
   ...
}

class Location extends AbstractEntity
{
   protected $name = '';
   protected $city = '';
   ...
}

和第三个域模型如:

class Mapper extends AbstractEntity
{
   protected $domainModelName = '';
   protected $domainModelProperty = '';
}

现在我想要添加这样的条目:

domain_model_name | domain_model_property
Product           | name
Product           | sku
Location          | city
....

在扩展安装期间或直接安装后,以便自动填充tx_foxexample_domain_model_mapper表,这可能吗?

我知道我可以使用initializeAction,但是只有在我添加插件并访问页面等时才会生成条目,但我希望在使用插件之前条目/对象已经存在或添加一些对象。

1 个答案:

答案 0 :(得分:7)

您可以将静态数据存储在文件ext_tables_static+adt.sql中,该文件必须位于扩展程序的根文件夹中。

根据TYPO3 API,您必须使用以下命令导出静态数据

mysqldump --password=[password] [database name] [tablename] --add-drop-table > ./ext_tables_static.sql

还要确保静态表的表结构存在于ext_tables.sql文件中。

扩展程序static_info_tables使用此技术。您可以查看扩展程序here以获取更多详细信息。