Tuesday, January 25, 2022

[FIXED] How to use a custom format for multi-column display fields?

Issue

Is anyone aware of a way of expanding the 'normal' uses of this (it's id by default and easily changed to field1)? I have one displayField sets follows:

$this->displayField(['name', 'desc']);

Which displays as Name; Description when called in a template file. I know it's a fudge, but it there a way I can manipulate this to have it display Name - Description for example, just by using the displayField?


Solution

Use a virtual field, and specify that to be used as display field instead of using multiple columns, something along the lines of

// ...

class YourEntity extends Entity
{
    // ...

    protected function _getNameDesc()
    {
        return
            $this->_properties['name'] .
            ' - ' .
            $this->_properties['desc'];
    }
}
// ...

class YourTable extends Table
{
    // ...

    public function initialize(array $config)
    {
        $this->displayField('name_desc');

        // ...
    }
}

See also



Answered By - ndm

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.