0
私のCRMシステムにdinamically私のARモデルにプロパティを追加しようとしています。この問題を解決するために最善の解決策を待っているyii2実行時にプロパティを追加する
Setting unknown property: common\modules\crm\models\CrmClient::user_id
...あなたがモデルGIIあなたを作成する場合
私のCRMシステムにdinamically私のARモデルにプロパティを追加しようとしています。この問題を解決するために最善の解決策を待っているyii2実行時にプロパティを追加する
Setting unknown property: common\modules\crm\models\CrmClient::user_id
...あなたがモデルGIIあなたを作成する場合
、最初のモデル内のすべてのプロパティを定義します。ここ
public function getCustomFields($key = null)
{
if (static::$customFields === null)
{
$fields = (new Query)->from('client_fields')->indexBy('key')->all(static::$conn);
if ($columns = static::$conn->getSchema()->getTableSchema('client_profiles')->getColumnNames())
{
foreach ($columns as $column)
{
if (isset($fields[$column]))
{
static::$customFields[$column]['name'] = $fields[$column]['name'];
static::$customFields[$column]['settings'] = @json_decode($fields[$column]['settings'], true);
}
if(! isset($this->{$column}))
{
$this->{$column} = null;
}
}
}
static::$customFields = static::$customFields ?: [];
}
return $key ? (isset(static::$customFields[$key]) ? static::$customFields[$key] : null) : static::$customFields;
}
そして
は結果であり、プロパティ定義が表示されます。例えば
/**
* This is the model class for table "user_activity".
*
* @property integer $ua_id
* @property integer $user_id
* @property string $filename
* @property integer $created_at
*
* @property User $user
*/