CakePHP-客户有多个国家/地区字段。如何将国家/地区模型链接到客户?
国家/地区表如下所示:CakePHP-客户有多个国家/地区字段。如何将国家/地区模型链接到客户?,cakephp,cakephp-2.2,Cakephp,Cakephp 2.2,国家/地区表如下所示: iso | name -------------------------- AD | Andorra AE | United Arab Emirates AF | Afghanistan ...etc “我的客户”表具有以下字段,这些字段均存储国家/地区代码: id | country_origin | current_country_study | address_country ----------------------------------------
iso | name
--------------------------
AD | Andorra
AE | United Arab Emirates
AF | Afghanistan
...etc
“我的客户”表具有以下字段,这些字段均存储国家/地区代码:
id | country_origin | current_country_study | address_country
--------------------------------------------------------
54 | BE | GB | GB
我不确定如何链接国家/地区模型,以便在查找客户模型时检索国家/地区的名称。如果我有一个名为
country\u id
的字段,我就可以了,但不知道如何处理多个字段。别名应该可以:
public $belongsTo = array(
'CountryOrigin' => array(
'className' => 'Country',
'foreignKey' => 'country_origin_id'
),
'CurrentCountry' => array(
'className' => 'Country',
'foreignKey' => 'current_country_id'
),
....
);
您需要更新
customers
表以获得新的外键字段。我认为这也可以,但是模型不总是由ID字段连接吗?如果您将外键指定为“country\u origin\u id”,它不会查找“country\u origin\u id”等于Customer.id的国家吗?它会查找country.id=Customer。当前的\u country\u id
等等(或者至少应该:),您会将该代码添加到客户模型中。啊,好的,听起来不错。这意味着OP必须修改最初发布的表结构。是的。我想这是显而易见的,不过我还是更新了答案:)嗯。。。看起来是个不错的选择。要是我早知道修改桌子会很痛苦就好了。谢谢我会让你知道事情的进展。