0
我没有获取某个特定项目的类别。 模型与关系cakephp - 获取特定类别的项目
- 1项目有许多ProjectCategory(中间表是NodeAssociation)
我使用的hasAndBelongsToMany关系
/示范项目/
public $hasAndBelongsToMany = array( 'ProjectCategory' => array( 'className' => 'ProjectCategory', 'joinTable' => 'NodeAssociation', 'foreignKey' => 'skin_node_id', 'associationForeignKey' => 'source_node_id' ) );
/SQL/
SELECT pc.id,pc.cname AS类
FROM项目p
JOIN nodeassociation NA
ON p.id = na.source_node_id和p.id = 10001
JOIN projectcategory pc
ON na.sink_node_id = pc.id AND sink_node_entity ='ProjectCategory';
FUNCTION in ProjectsController
$joins = array(
array('table' => 'nodeassociation',
'alias' => 'NodeAssociation',
'conditions' => array(
'Project.id = NodeAssociation.source_node_id',
)
),
array('table' => 'projectcategory',
'alias' => 'ProjectCategory',
'conditions' => array(
'NodeAssociation.sink_node_id = ProjectCategory.id', "NodeAssociation.sink_node_entity='ProjectCategory'"
)
)
);
$categories = $this->Project->ProjectCategory->find('all', array('joins' => $joins,
'fields' => array('ProjectCategory.id, ProjectCategory.cname'),
'recursive' => -1,
'conditions' => array('Project.id' => 10001)));
的错误,在我看来是
Error: SQLSTATE[42P01]: Undefined table: 7 ERRO: faltando entrada para tabela "Project" na cláusula FROM LINE 1: ...ublic"."nodeassociation" AS "NodeAssociation" ON ("Project"....^
我究竟做错了什么?
问候
如果你想跟着蛋糕约定,你的表名应当强调复数。我无法读取该错误,但看起来无法找到“项目”表? – Dave
我无法更改数据库。 :/是的,它不能找到项目表。 – Jcbo
是否有项目表? – Dave