同じ構造を持つ複数のテーブルを使用する 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 はその 1 つです。会社ABCのユーザーがログインしてプロセスPQRを選択した場合、データベースにテーブルABC_PQRが存在しない場合は作成するか、テーブルが既に作成されている場合はロードする必要があります。モデルにこのテーブル名が必要です。同様に、多くのユーザーと多くのプロセスがそこにあります。データベースを管理するための最良のアプローチは何でしょうか。