我有一个 Yii2 模型,它使用具有相同结构的多个表。表名将根据登录的用户而改变,并且表名非常独特,并且取决于用户名。我将如何动态地将这个表名分配给模型?到目前为止我已经这样做了。
在我的模型中:
protected $table;
public function __construct($table)
{
$this->table='custom_risk_assignment_table';//logic to obtain the table name goes here
}
public static function tableName()
{
return $this->table;
}
但是这样做会导致错误Using $this when not in object context
,因为function tableName()
它是一个static
函数。
那我该怎么做?任何帮助表示赞赏。在此先感谢!
编辑:详细图片
假设我有一个来自 ABC 公司的用户。我的应用程序中有很多进程,比如 PQR 就是其中之一。如果来自公司 ABC 的用户登录并选择流程 PQR,如果不存在,我需要在我的数据库中创建一个表 ABC_PQR,或者如果它已经创建,则加载该表。我需要这个表名到我的模型中。同样可能存在用户和许多进程。管理数据库的最佳方法是什么。