在我的 CMS 中,我想通过在数据库中创建一个表来添加模块。但是带有数据映射器的 Codeigniter 有一个强制性规则:在代码中给出表名。我创建了一个 Datamapper 模型,如下所示:
class Module_universeel extends DataMapper {
public $table = 'module_universeel';
public $has_one = array('page');
public function __construct($module_table=null) {
parent::__construct();
if(isset($module_table)) $this->table = $module_table;
}
}
这在我创建一个名为“module_universeel”的表时有效。当我将表名更改为“module_news”或其他内容时,它可以工作。但它不会改变我的数据映射器的结构($this->fields)。
我怎样才能做到这一点?有人有这方面的经验吗?