<?php namespace SilverStripe\ORM\Tests\Search\SearchContextTest; use SilverStripe\Dev\TestOnly; use SilverStripe\Forms\TextField; use SilverStripe\ORM\DataObject; class Order extends DataObject implements TestOnly { private static $table_name = 'SearchContextTest_Order'; private static $db = [ 'Name' => 'Varchar', ]; private static $has_one = [ 'Customer' => Customer::class, 'ShippingAddress' => Address::class, ]; private static $searchable_fields = [ 'CustomFirstName' => [ 'title' => 'First Name', 'field' => TextField::class, 'match_any' => [ // Searching with the "First Name" field will show Orders matching either Name, Customer.FirstName, or ShippingAddress.FirstName 'Name', 'Customer.FirstName', 'ShippingAddress.FirstName', ], ], 'PartialMatchField' => [ 'field' => TextField::class, 'filter' => 'PartialMatchFilter', 'match_any' => [ 'Name', 'Customer.FirstName', 'ShippingAddress.FirstName', ], ], 'ExactMatchField' => [ 'field' => TextField::class, 'filter' => 'ExactMatchFilter', 'match_any' => [ 'Name', 'Customer.FirstName', 'ShippingAddress.FirstName', ], ], ]; }