ユーザー テーブルと、互いに関連付けたい都市のテーブルがあります。ご想像のとおり、都市は複数のユーザーを持つことができますが、1 つのユーザーは 1 つの都市にしかリンクできません。
テーブルの設定方法が本当にわかりません。City に $hasMany リレーションを、User に $hasOne リレーションを試すと、エラーが発生します。これは、city テーブルに client_id フィールドが見つからないためです。私の都市テーブルは修正される予定です。誰もテーブルを変更することはありません。このテーブルに都市に関する情報を保存したいだけです。
編集:これが私のテーブルと私のモデルです(シンプルに保たれています):
clients { id, firstname, lastname, city_id }
cities { id, name, some_other_data }
そして、ここに私のモデルがあります:
// User
class Client extends AppModel {
public $hasOne = array(
'City'
);
}
// City
class City extends AppModel {
public $useTable = 'cities';
public $hasMany = array(
'Client'
);
}