Php 类型3:在扩展安装期间插入数据(创建表之后)
对于我正在编写的自定义扩展,我有一个ext_tables.sql文件,该文件将在安装时加载 我想在安装例程期间使用PHP代码将一些动态数据插入从ext_tables.sql创建的表中。这可能吗?如果是,我必须做什么?我必须在哪里做Php 类型3:在扩展安装期间插入数据(创建表之后),php,installation,typo3,Php,Installation,Typo3,对于我正在编写的自定义扩展,我有一个ext_tables.sql文件,该文件将在安装时加载 我想在安装例程期间使用PHP代码将一些动态数据插入从ext_tables.sql创建的表中。这可能吗?如果是,我必须做什么?我必须在哪里做 或者,是否可以让PHP代码在安装过程中创建表(使用DB接口),而不是依赖ext_tables.sql?再说一次,如果是这样的话,我该怎么做?我该在哪里做 旧EM中至少有一个钩子(类型3 4.5及以下)。我想新的也有一些 您可以向视图中添加一些字段,从中可以设置设置 $
或者,是否可以让PHP代码在安装过程中创建表(使用DB接口),而不是依赖ext_tables.sql?再说一次,如果是这样的话,我该怎么做?我该在哪里做 旧EM中至少有一个钩子(类型3 4.5及以下)。我想新的也有一些 您可以向视图中添加一些字段,从中可以设置设置
$TYPO3_CONF_VARS['SC_OPTIONS']['typo3/mod/tools/em/index.php']['tsStyleConfigForm'][] = "EXT:yourextension/class.yourextension.php:yourextension->main";
当然你可以(用一个小技巧):
# cat=basic; type=user[EXT:<EXTNAME>/Path/To/Class.php:Tx_Path_To_Class->postInstall]; label=
postInstallAction=0
}安装扩展后,您现在可以单击“进行更新”按钮来执行脚本。为什么不在ext_tables.sql文件的底部添加插入项?虽然这是可能的,但值来自配置PHP类。。。因此,更干净/正确的方法是在创建表后动态插入这些值。
class Tx_Path_To_Class {
/**
* Generates and returns an message.
*
* @param array $params Name and value from ext_conf_template.txt
* @param t3lib_tsStyleConfig $styleConfig Instance of config style editor
*
* @return string HTML code
*/
public function postInstall(array $params, t3lib_tsStyleConfig $styleConfig) {
// Do your stuff
return '';
}