0

我正在使用 CakePHP,我有 2 个表,文档和下载,在下载表上我有一个字段:Document_id,使与模型的关联工作正常,但有时我在 Document_id 中有一个像这样的字段“2,10,12 ", 我怎样才能关联表格?

4

1 回答 1

1

您不应该在一个字段中存储多个 id(除非您有意对数据库进行非规范化,但您不会问这个问题)。

执行此操作的“正确”方法是使用称为链接表的第三个表。例如“documents_downloads”,用于存储具有匹配 document_ids 的 download_ids。

下载 hasMany DocumentDownload
DocumentDownload belongsTo Download & Document
Document hasMany DocumentDownload

实现这一点的最简单方法是使用 Cake 的“hasMany through (The Join Model)”

请参阅 Cakebook 的部分:http: //book.cakephp.org/2.0/en/models/associations-linking-models-together.html#hasmany-through-the-join-model

于 2012-04-06T08:38:42.560 回答