Module Contao中的自定义可编辑字段
是否可以向模块Peronal数据添加新的自定义可编辑字段?如果是,这是如何工作的?PHP我的管理员和添加Mysql表?或者这可以通过contao后端完成吗?请告诉我这很有可能。我不确定您现在使用的是哪个contao版本,因为它们在创建数据库字段的方式上有所不同 假设您希望将“接受条款”复选框添加到注册模块 Contao 2.11 在modules目录中创建一个具有以下结构的文件夹Module Contao中的自定义可编辑字段,module,contao,Module,Contao,是否可以向模块Peronal数据添加新的自定义可编辑字段?如果是,这是如何工作的?PHP我的管理员和添加Mysql表?或者这可以通过contao后端完成吗?请告诉我这很有可能。我不确定您现在使用的是哪个contao版本,因为它们在创建数据库字段的方式上有所不同 假设您希望将“接受条款”复选框添加到注册模块 Contao 2.11 在modules目录中创建一个具有以下结构的文件夹 myModule/config/database.sql myModule/dca/tl_member.php my
myModule/config/database.sql
myModule/dca/tl_member.php
myModule/languages/en/tl_member.php
在database.sql中,按如下方式创建字段
CREATE TABLE `tl_member` (
$GLOBALS['TL_LANG']['tl_member']['accept_terms'] = array('Terms & Conditions', 'I accept the terms and conditions of using this website.');
$GLOBALS['TL_DCA']['tl_member']['fields']['accept_terms'] = array(
'label' => &$GLOBALS['TL_LANG']['tl_member']['accept_terms'],
'inputType' => 'checkbox',
'eval' => array( 'mandatory' => true, 'tl_class' => 'w50', 'feEditable' => true,'feViewable'=>true),
'sql' => "char(1) NOT NULL default ''"
);
accept_terms char1非空默认值,
ENGINE=MyISAM默认字符集=utf8
在dca/tl_member.php中,将该字段添加到tl_member dca中,登录详细信息如下所示
$GLOBALS['TL_DCA']['tl_member']['palettes']['default'] = str_replace('login;','login,accept_terms;',$GLOBALS['TL_DCA']['tl_member']['palettes']['default']);
创建字段,如下所示,用于生成复选框输入
$GLOBALS['TL_DCA']['tl_member']['fields']['accept_terms'] = array(
'label' => &$GLOBALS['TL_LANG']['tl_member']['accept_terms'],
'inputType' => 'checkbox',
'eval' => array( 'mandatory' => true, 'tl_class' => 'w50', 'feEditable' => true,'feViewable'=>true)
);
注:
必填=>true//将其设为必填字段
feEditable=>true//启用模块内个人数据编辑或模块注册
feViewable=>true//使其出现在模块个人数据或模块注册中
在languages/en/tl_member.php中,按如下方式创建标签
CREATE TABLE `tl_member` (
$GLOBALS['TL_LANG']['tl_member']['accept_terms'] = array('Terms & Conditions', 'I accept the terms and conditions of using this website.');
$GLOBALS['TL_DCA']['tl_member']['fields']['accept_terms'] = array(
'label' => &$GLOBALS['TL_LANG']['tl_member']['accept_terms'],
'inputType' => 'checkbox',
'eval' => array( 'mandatory' => true, 'tl_class' => 'w50', 'feEditable' => true,'feViewable'=>true),
'sql' => "char(1) NOT NULL default ''"
);
Contao 3
结构基本相同,只是您不需要database.sql,也就是说,您可以删除它并修改dca/tl_member.php,如下所示
CREATE TABLE `tl_member` (
$GLOBALS['TL_LANG']['tl_member']['accept_terms'] = array('Terms & Conditions', 'I accept the terms and conditions of using this website.');
$GLOBALS['TL_DCA']['tl_member']['fields']['accept_terms'] = array(
'label' => &$GLOBALS['TL_LANG']['tl_member']['accept_terms'],
'inputType' => 'checkbox',
'eval' => array( 'mandatory' => true, 'tl_class' => 'w50', 'feEditable' => true,'feViewable'=>true),
'sql' => "char(1) NOT NULL default ''"
);
请注意,在数组中添加了此行“sql”=>char1 NOT NULL default
现在转到安装工具并在mysql中创建字段。登录到后端,进入模块,你的个人数据模块,你应该能够看到你的领域那里。选中它以将其包含到前端字段,您就完成了
请不要在所有目录中使用tl_成员和接受_术语的一致性,这是非常可能的。我不确定您现在使用的是哪个contao版本,因为它们在创建数据库字段的方式上有所不同 假设您希望将“接受条款”复选框添加到注册模块 Contao 2.11 在modules目录中创建一个具有以下结构的文件夹
myModule/config/database.sql
myModule/dca/tl_member.php
myModule/languages/en/tl_member.php
在database.sql中,按如下方式创建字段
CREATE TABLE `tl_member` (
$GLOBALS['TL_LANG']['tl_member']['accept_terms'] = array('Terms & Conditions', 'I accept the terms and conditions of using this website.');
$GLOBALS['TL_DCA']['tl_member']['fields']['accept_terms'] = array(
'label' => &$GLOBALS['TL_LANG']['tl_member']['accept_terms'],
'inputType' => 'checkbox',
'eval' => array( 'mandatory' => true, 'tl_class' => 'w50', 'feEditable' => true,'feViewable'=>true),
'sql' => "char(1) NOT NULL default ''"
);
accept_terms char1非空默认值,
ENGINE=MyISAM默认字符集=utf8
在dca/tl_member.php中,将该字段添加到tl_member dca中,登录详细信息如下所示
$GLOBALS['TL_DCA']['tl_member']['palettes']['default'] = str_replace('login;','login,accept_terms;',$GLOBALS['TL_DCA']['tl_member']['palettes']['default']);
创建字段,如下所示,用于生成复选框输入
$GLOBALS['TL_DCA']['tl_member']['fields']['accept_terms'] = array(
'label' => &$GLOBALS['TL_LANG']['tl_member']['accept_terms'],
'inputType' => 'checkbox',
'eval' => array( 'mandatory' => true, 'tl_class' => 'w50', 'feEditable' => true,'feViewable'=>true)
);
注:
必填=>true//将其设为必填字段
feEditable=>true//启用模块内个人数据编辑或模块注册
feViewable=>true//使其出现在模块个人数据或模块注册中
在languages/en/tl_member.php中,按如下方式创建标签
CREATE TABLE `tl_member` (
$GLOBALS['TL_LANG']['tl_member']['accept_terms'] = array('Terms & Conditions', 'I accept the terms and conditions of using this website.');
$GLOBALS['TL_DCA']['tl_member']['fields']['accept_terms'] = array(
'label' => &$GLOBALS['TL_LANG']['tl_member']['accept_terms'],
'inputType' => 'checkbox',
'eval' => array( 'mandatory' => true, 'tl_class' => 'w50', 'feEditable' => true,'feViewable'=>true),
'sql' => "char(1) NOT NULL default ''"
);
Contao 3
结构基本相同,只是您不需要database.sql,也就是说,您可以删除它并修改dca/tl_member.php,如下所示
CREATE TABLE `tl_member` (
$GLOBALS['TL_LANG']['tl_member']['accept_terms'] = array('Terms & Conditions', 'I accept the terms and conditions of using this website.');
$GLOBALS['TL_DCA']['tl_member']['fields']['accept_terms'] = array(
'label' => &$GLOBALS['TL_LANG']['tl_member']['accept_terms'],
'inputType' => 'checkbox',
'eval' => array( 'mandatory' => true, 'tl_class' => 'w50', 'feEditable' => true,'feViewable'=>true),
'sql' => "char(1) NOT NULL default ''"
);
请注意,在数组中添加了此行“sql”=>char1 NOT NULL default
现在转到安装工具并在mysql中创建字段。登录到后端,进入模块,你的个人数据模块,你应该能够看到你的领域那里。选中它以将其包含到前端字段,您就完成了
请不要在所有目录中使用tl_member和accept_术语的一致性我们在3.2.7版中尝试了这一点,但似乎不起作用。我们成功地将表添加到数据库中,但它没有显示在可编辑字段中。我们在版本3.2.7中尝试了此操作,但似乎不起作用。我们成功地将表添加到数据库中,但它没有显示在可编辑字段中。