-
Notifications
You must be signed in to change notification settings - Fork 295
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Sorting in lens: Call undefined method getMedia() #65
Comments
krns
changed the title
Sort in lens: Call undefined method getMedia()
Sorting in lens: Call undefined method getMedia()
Mar 28, 2019
Solved the problem. The /**
* @param HasMedia $resource
* @param null $attribute
*/
public function resolve($resource, $attribute = null)
{
$this->value = $resource->getMedia($attribute ?? $this->attribute)
… When passing a lens to your resource you have to pass the resource explicitly because of the lens constructor: /**
* Create a new lens instance.
*
* @param \Illuminate\Database\Eloquent\Model|null $resource
* @return void
*/
public function __construct($resource = null)
{
$this->resource = $resource ?: new stdClass;
} public function lenses(Request $request): array
{
return [
// Not working
new MyLens,
// Working
new MyLens($this),
];
} |
how to solve this? i get call to undefined method getMedia() |
Pass the resource to your lens constructor (see #65 (comment)) |
Closed
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Thanks for your work, we really like this package. Today we detected the following behaviour.
Our model
Tool
uses theHasMediaTrait
and implementsHasMedia
.The fields of the resource
Tool
look like this:Everything works fine on the index view, also sorting by
name
column works.The
Tool
resource has a lens which has the same fields and same configuration.Requesting the lens also works, but sorting by
name
column in the lens results in the following error:Do you have some ideas? Thanks in advance!
The text was updated successfully, but these errors were encountered: