laravel-livewire-tables
laravel-livewire-tables copied to clipboard
[Bug]: Relationship not working if we have multiple relationship with same table
What happened?
public function seller() { return $this->belongsTo(User::class, 'seller_id')->withTrashed(); }
/**
* Get order items
*
* @return object
*/
public function items()
{
return $this->hasMany(OrderItem::class, 'order_id');
}
Column::make("Buyer", "buyer.email")
// ->view('datatable.views.orders.table-order-buyer')
->sortable(),
Column::make("Seller", "seller.email")
// ->view('datatable.views.orders.table-order-seller')
->sortable(),
It returns same value for both columns
How to reproduce the bug
public function seller() { return $this->belongsTo(User::class, 'seller_id')->withTrashed(); }
/**
* Get order items
*
* @return object
*/
public function items()
{
return $this->hasMany(OrderItem::class, 'order_id');
}
Column::make("Buyer", "buyer.email")
// ->view('datatable.views.orders.table-order-buyer')
->sortable(),
Column::make("Seller", "seller.email")
// ->view('datatable.views.orders.table-order-seller')
->sortable(),
It returns same value for both columns
Package Version
No response
PHP Version
None
Laravel Version
No response
Alpine Version
No response
Theme
None
Notes
No response
Error Message
No response
/** * Get buyer * * @return object */ public function buyer() { return $this->belongsTo(User::class, 'buyer_id')->withTrashed(); }
/**
* Get seller
*
* @return object
*/
public function seller()
{
return $this->belongsTo(User::class, 'seller_id')->withTrashed();
}
So I suspect it's due to how the package creates the joins dynamically.
Please confirm which version of the Tables Package, Laravel, Livewire you're using
Can you please also share:
- The full code for your Table Component
- The relevant elements from the Model that is being used in the Table as the "primary model", (i.e. the relationships)
Please wrap it in the script tags (three ` marks)
I can then try to replicate it on my end and give you some options, or fix any bugs.