Php Kohana 3.3表格结构

Php Kohana 3.3表格结构,php,kohana,kohana-3,Php,Kohana,Kohana 3,我在Kohana 3.3中有一个简单的crud应用程序,其中包含一些不同类型的数据或模型。假设这些模型是: 使用者 地点 技巧 我为每个模型都有一个表,但是这些表之间没有任何关联。我一直在试图定义与ORM的关系,但我仍然感到困惑。例如: 我有很多地方。每个位置都有许多用户 我知道我可以用以下方法来定义: class Model_Location extends ORM { /** * A location has many users * * @var

我在Kohana 3.3中有一个简单的crud应用程序,其中包含一些不同类型的数据或模型。假设这些模型是:

  • 使用者
  • 地点
  • 技巧
我为每个模型都有一个表,但是这些表之间没有任何关联。我一直在试图定义与ORM的关系,但我仍然感到困惑。例如:

我有很多地方。每个位置都有许多用户

我知道我可以用以下方法来定义:

class Model_Location extends ORM {

    /**
     * A location has many users
     *
     * @var array Relationships
     */
    protected $_has_many = array(
        'users' => array('model' => 'user'),
    );

}
据我所知,我可以通过从用户表中的行中引用父位置的ID来连接两者。但是,如果每个用户可以属于多个位置,该怎么办?我应该在外键中存储序列化数据吗?我应该创建一个“查找表”吗?如果是,它应该是什么样子


例如,我如何查询数据库中的某个位置以及连接到该位置的所有用户?ORM甚至是用于此类事情的正确技术吗?

如果要通过参数查找
,请查看

您需要一个额外的表来存储两个模型的ID

users\u locations
,字段:
userid
location\u id
(当然,这两个字段都已索引)

在您的模型中:

protected $_has_many = array(
    'users' => array(
        'model' => 'user'
        'through' => 'users_locations',
    ),
);
在用户模型中,反之亦然:

protected $_has_many = array(
    'locations' => array(
        'model' => 'location'
        'through' => 'users_locations',
    ),
);