私はと呼ばれるwebsites
テーブルと呼ばれるテーブルを持っていますclients
クライアントには多くの Web サイトがあり、Web サイトはクライアントに属します
このために、次の接続を my に作成しましたModels
。
class Website extends AppModel
{
public $belongsTo = array(
'Client' => array(
'className' => 'Client',
'dependent' => false,
'foreignKey' => 'client_id'
)
);
}
class Client extends AppModel
{
public $hasMany = array(
'Website' =>array(
'className' => 'Website',
'dependent' => true,
'foreignKey' => 'client_id'
)
);
これで、クライアントが編集に行くときはいつでも、クライアントはそのユーザーに属する Web サイト ID のみを編集できるようになります。
ただし、私の場合、どのクライアントも任意の Web サイトを編集できます。
コントローラーでチェックをハードコーディングせずにアクセスを拒否する方法はありますか?
つまり、ケーキの魔法がその clientid に属する Web サイトのみを見つける方法があるはずです。