我如何获得关联 table 列名称? cakephp 3.x

How can i get assocation table colums name? cakephp 3.x

我达到了:

$this->Users->schema()->columns();//return Users Table Colums Name Array
$this->Users->associations()->keys()//return Users assocation table key

但我想访问关联列名称。

用户 table: id, user_name, user_password, user_group_id

user_groups: id,group_name

$this->Users->schema()->columns() => return id, user_name, user_password, user_group_id

$this->Users->associations()->keys() => return user_group

我需要 user_groups table 列名称列表或数组。

要访问任何协会的信息,您可以使用 association() 功能:

$userGourps = $this->Users->association('UserGroups');

或者您可以使用魔法 属性 按名称获取它:

$userGroups = $this->Users->UserGroups;

获得 属性 后,您可以访问 table 的架构:

$columns = $userGroups->schema()->columns();

当然,您可以在一条链中完成:

$columns = $this->Users->UserGroups->schema()->columns();