primoz2500 / hasoneautocompletefield
A CMS form field for adding has_one relationships using autocomplete
Installs: 1 774
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 12
Open Issues: 0
Type:silverstripe-vendormodule
Requires
- silverstripe/framework: ~4.0
README
Overview
This module adds a field for using an autocomplete dropdown to assign a has_one relationship. It's styled after the URLSegment field.
FORK CHANGES: Added support for functions as result list title ( fields are accessible as get{FieldName} functions just with the function name )
Maintainer Contacts
- Nathan Cox (nathan@flyingmonkey.co.nz)
- Primoz Skerbis (primoz2500@gmail.com)
Requirements
- SilverStripe 4.0+
For SilverStripe 3.x see the version 1 branch on Github: https://github.com/nathancox/silverstripe-hasoneautocompletefield/tree/1
Installation Instructions
Via composer:
composer require primoz2500/hasoneautocompletefield
Or manually download the module and place it in a folder called hasoneautocompletefield in your site root.
Visit yoursite.com/dev/build?flush=1
Documentation
Example code:
<?php use SilverStripe\CMS\Model\SiteTree; use NathanCox\HasOneAutocompleteField\Forms\HasOneAutocompleteField; class Page extends SiteTree { private static $db = []; private static $has_one = [ 'LinkedPage' => 'Page' ]; public function getCMSFields() { $fields = parent::getCMSFields(); $fields->addFieldToTab('Root.Content', $pageField = HasOneAutocompleteField::create('LinkedPageID', 'Linked Page', 'Page', 'Title')); $pageField->setSearchFields(array('Title', 'Content')); $pageField->enableClearButton(); return $fields; } }