Cakephp-查找线程
我有一个tweet表,存储tweet及其回复,如下所示 推特(id、家长id、推特消息、时间) 其中,如果是tweet,则parent_id为self id;如果是reply,则parent_id为parent id。如何查找id=parent\u id的推文 例如: tweet(1,1,'我的名字是哈莎','时间')parent_id=id,因为这是一条tweet,而不是回复Cakephp-查找线程,cakephp,model,find,cakephp-1.3,Cakephp,Model,Find,Cakephp 1.3,我有一个tweet表,存储tweet及其回复,如下所示 推特(id、家长id、推特消息、时间) 其中,如果是tweet,则parent_id为self id;如果是reply,则parent_id为parent id。如何查找id=parent\u id的推文 例如: tweet(1,1,'我的名字是哈莎','时间')parent_id=id,因为这是一条tweet,而不是回复 tweet(2,1,'Hello Harsha','time')parent_id=1,它告诉它id=1的tweet回
tweet(2,1,'Hello Harsha','time')parent_id=1,它告诉它id=1的tweet回复,这在理论上应该有效。查看SQL调试日志,了解在出现任何错误时它会做什么
$conditions = array(
'Tweet.id = Tweet.parent_id'
);
$tweets = $Tweet->find('all', $conditions);
或者,如果您正在寻找一个特定的ID,您可以这样做
$conditions = array(
'Tweet.id' => 1,
'Tweet.parent_id' => 1
);
$tweets = $Tweet->find('all', $conditions);
您可以使用MySQL
not操作符来搜索所有非根推文
$conditions = array(
'Tweet.id' => 1,
'Tweet.parent_id <>' => 1
);
$tweets = $Tweet->find('all', $conditions);
$conditions=array(
'Tweet.id'=>1,
'Tweet.parent_id'=>1
);
$tweets=$Tweet->find('all',$conditions);
或
“Tweet.id=Tweet.parent\u id”
这在理论上应该是可行的。查看SQL调试日志,了解在出现任何错误时它会做什么
$conditions = array(
'Tweet.id = Tweet.parent_id'
);
$tweets = $Tweet->find('all', $conditions);
或者,如果您正在寻找一个特定的ID,您可以这样做
$conditions = array(
'Tweet.id' => 1,
'Tweet.parent_id' => 1
);
$tweets = $Tweet->find('all', $conditions);
您可以使用MySQL
not操作符来搜索所有非根推文
$conditions = array(
'Tweet.id' => 1,
'Tweet.parent_id <>' => 1
);
$tweets = $Tweet->find('all', $conditions);
$conditions=array(
'Tweet.id'=>1,
'Tweet.parent_id'=>1
);
$tweets=$Tweet->find('all',$conditions);
或
“Tweet.id=Tweet.parent\u id”
为什么不使用
Yarek T的建议可能会起作用,但只适用于一个级别。为什么不使用
雅瑞克T的建议可能有效,但只适用于一个级别。谢谢。第一个是我正在尝试的。我是这样做的$conditions=array('Tweet.id'='Tweet.parent_id');现在,对于回答,我怎么能用Twitter ID不等于twitt的另一种方式来做呢?PalthyID',但是你应该考虑使用Nik建议的树行为。如果您的模型变得复杂,Cake的模型行为非常有用。谢谢。第一个是我正在尝试的。我是这样做的$conditions=array('Tweet.id'='Tweet.parent_id');现在,对于回答,我怎么能用Twitter ID不等于twitt的另一种方式来做呢?PalthyID',但是你应该考虑使用Nik建议的树行为。如果模型变得复杂,Cake的模型行为非常有用。