Laravel模型绑定丢失的关系

问题描述 投票:0回答:2

我正在尝试在基于客户订单的模型上转换为Model绑定。我的路线:

Route::model('order', 'App\Models\Order');
Route::resource('orders', 'OrderController');

这使我可以通过控制器来下达要编辑的订单(还可以获取状态以填充表并传递已登录的用户):

public function index(Order $order)
 {
  $orders = $order->get();
  return view('orders.index', compact('orders'));
}

我的orders.index将正确显示$ order-> id,但是当我尝试遍历由hasMany关系连接的Action时,什么也没显示。或者,我尝试显示通过user_id属于用户的$ order-> user-> firstname。

@foreach( $order->actions as $action )
  {{ $action->type->type }}
@endforeach

根据我的动作模型:

public function order()
{
    return $this->belongsTo('\App\Models\Order', 'order_id');
}

从我的订单模型:

public function actions()
{
    return $this->hasMany('\App\Models\Action', 'order_id');
}

这里是订单转储摘录:

`Illuminate\Database\Eloquent\Collection Object
(
    [items:protected] => Array
        (
            [0] => App\Models\Order Object
                (
                    [table:protected] => orders
                    [timestamps] => 1
                    [dates:protected] => Array
                        (
                            [0] => deleted_at
                        )

                    [connection:protected] => 
                    [primaryKey:protected] => id
                    [perPage:protected] => 15
                    [incrementing] => 1
                    [attributes:protected] => Array
                        (
                            [id] => 1
                            [created_at] => 2015-03-16 23:42:45
                            [updated_at] => 2015-03-19 04:37:53
                            [deleted_at] => 
                            [user_id] => 16
                            [status_id] => 5
                            [address_id] => 5
                            [datetime_pickup_actual] => 
                            [datetime_delivery_actual] => 
                            [datetime_pickup_requested] => 2015-03-20 17:00:00
                            [datetime_delivery_requested] => 2015-03-21 17:00:00
                            [hold] => 0
                            [weight] => 20
                        )

                    [original:protected] => Array
                        (
                            [id] => 1
                            [created_at] => 2015-03-16 23:42:45
                            [updated_at] => 2015-03-19 04:37:53
                            [deleted_at] => 
                            [user_id] => 16
                            [status_id] => 5
                            [address_id] => 5
                            [datetime_pickup_actual] => 
                            [datetime_delivery_actual] => 
                            [datetime_pickup_requested] => 2015-03-20 17:00:00
                            [datetime_delivery_requested] => 2015-03-21 17:00:00
                            [hold] => 0
                            [weight] => 20
                        )

                    [relations:protected] => Array
                        (
                        )

                    [hidden:protected] => Array
                        (
                        )

                    [visible:protected] => Array
                        (
                        )

                    [appends:protected] => Array
                        (
                        )

                    [fillable:protected] => Array
                        (
                        )

                    [guarded:protected] => Array
                        (
                            [0] => *
                        )

                    [casts:protected] => Array
                        (
                        )

                    [touches:protected] => Array
                        (
                        )

                    [observables:protected] => Array
                        (
                        )

                    [with:protected] => Array
                        (
                        )

                    [morphClass:protected] => 
                    [exists] => 1
                    [forceDeleting:protected] => 
                )`
laravel model eloquent model-binding laravel-5
2个回答
© www.soinside.com 2019 - 2024. All rights reserved.