0

如果您愿意提供一些基本代码来展示如何正确使用模型别名。

我的主要困惑是

  1. 当我为模型使用别名时,我应该为这样的别名创建特定的控制器和视图,就像我使用为其创建特定控制器和视图的模型一样,还是应该使用别名作为现有模型的简单扩展?

  2. 请提供控制器中别名使用的示例。

很抱歉我没有提供任何代码,但我的困惑是在一个非常抽象和示意性的层面上。

4

1 回答 1

4
  1. 不,您不需要为别名模型创建控制器和视图
  2. 考虑例如。具有外键 sender_id 和 recipient_id 的消息表,它们都指向用户模型。因此,在您的 Message 模型中,关联声明将如下所示:

    public $belongsTo = array(
        'Sender' => array(
            'className' => 'User',
            'foreignKey' => 'sender_id'
        ),
        'Recipient' => array(
            'className' => 'User',
            'foreignKey' => 'recipient_id',
        )
    );

在您的消息控制器中,如果您想访问 Sender 然后您使用$this->Message->Senderor 为接收者$this->Message->Recipient。如果您在消息模型上进行查找,则生成的数组将分别在“发件人”下有发件人,在“收件人”键下有收件人。

于 2012-10-08T06:02:23.040 回答