laravel如何获得除一个以外的所有模型

时间:2014-07-05 10:10:47

标签: php laravel laravel-4

我有restaurant模型和waitingtime模型。关系是一对多,一切正常,我能够更新,编辑和删除

我可以获得像这样的特定餐厅的所有等待时间

public function edit($id)
    {
        $res = Restaurant::find(4);
        $allWaitingTimesForThisRestaurant = $res->waitingtimes()->get();

这给了我一个数组,我很高兴在页面返回时在我的jquery中使用它。

我的问题

有什么办法让我仍然可以获得特定餐厅的所有等待时间但没有特定的等待时间

例如,编辑函数的输入是$id,这个$allWaitingTimesForThisRestaurant = $res->waitingtimes()->get();返回一个等待时间数组,所以我需要那个数组,但没有等待时间id=$id

你可以帮我吗?

我觉得我没有很好地解释我的问题,如果有这么好请告诉我解释更多。

许多人

2 个答案:

答案 0 :(得分:4)

为什么不只使用常规的?

$res = Restaurant::find(4);
$allWaitingTimesForThisRestaurant = $res->waitingtimes()->where('id', '!=', $res)->get();

编辑:另外,请参阅Hailwood在下面的评论,以获得一个好的附录。

答案 1 :(得分:1)

使用最少代码的最简单方法是在检索完所有内容后将其删除。

public function edit($id)
{
    $res = Restaurant::find(4);
    $allWaitingTimesForThisRestaurant = $res->waitingtimes()->get();

    foreach($allWaitingTimesForThisRestaurant as $restaurant) {
        if ($restaurant->id == $id) unset($restaurant);
    }

据我记得,如果您不想在之后将其删除,则必须自行编写SQL。