【问题标题】:Kohana v3 ORM Select and Where clause based on different tableKohana v3 ORM 基于不同表的 Select 和 Where 子句
【发布时间】:2010-10-05 01:36:00
【问题描述】:

您好,我需要这样做:

$hours->task->job->where('group_id' , '=' , $num)->find_all();

这将返回工作信息。有没有办法告诉 orm 从 $hours 表中返回信息?

【问题讨论】:

  • 你的问题不够清楚。
  • 我认为他想根据工作的 group_id 返回小时记录。像 $hours->where('task->job->group_id, '=', $group_id)->find_all() 这样的东西当然行不通。
  • 是的,Gerry 明白了。我想要这样的东西,但我不知道怎么做。

标签: mysql orm foreign-keys kohana relationship


【解决方案1】:

首先,你的基本 PHP 是错误的。

另外,请确保链接中的复数是准确的:

$task->jobs 假定任务与作业具有一对多的关系。你不能使用 find_all 除非它这样做。

这将在您的模型中定义。

试试:

$task = ORM::factory( 'task' , $some_task_id );

$hours = $task->jobs->where( 'group_id', '=', $num )->find_all();

这假定“group_id”值是作业模型中的一列。

希望这会有所帮助。如果您需要更多帮助,请添加 cmets。

【讨论】:

  • 这仍然会返回作业表。我想要返回任务表。我认为最好的方法是加入。
猜你喜欢
  • 1970-01-01
  • 2021-03-14
  • 2020-06-03
  • 1970-01-01
  • 2021-07-30
  • 1970-01-01
  • 2019-02-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多