Class HasOneComplexTableField
ComplexTableField with a radio button column, designed to edit a has_one join.
This [RelationTable](RelationTable) allows you to show a 1-to-1 or 1-to-many relation with a group of DataObjects as a (readonly) tabular list (similiar to [ComplexTableField](ComplexTableField)). Its most useful when you want to manage the relationship itself thanks the radio buttons present on each line of the table.
Moreover, you have the possibility to uncheck a radio button in order to make the relation as null.
Usage
$tablefield = new HasOneComplexTableField( $this, 'MyOnlyFruit', 'Fruit', array( 'Name' => 'Name', 'Color' => 'Color' ), 'getCMSFields_forPopup' );
Notice : You still have different ways to customize the popup window as in the parent-class [ComplexTableField](ComplexTableField).
This field is made to manage a has_one relation. In the SilverStripe relation between DataObjects, you can use this relation for 1-to-1 and 1-to-many relations. By default, a HasOneComplexTableField manages a 1-to-many relation. If you want to specify that the relation that you manage is a 1-to-1 relation, add this code :
$tablefield->setOneToOne();
- Object
-
ViewableData
implements
IteratorAggregate
-
RequestHandler
-
FormField
-
TableListField
-
ComplexTableField
-
HasManyComplexTableField
-
HasOneComplexTableField
Methods summary
public
|
#
getParentIdName( mixed $parentClass, mixed $childClass )
Returns the db-fieldname of the currently used has_one-relationship. |
public
|
|
public
|
#
saveInto(
Method to save this form field into the given data object. By default, makes use of $this->dataValue() |
public
|
|
public
|
|
public
|
Methods inherited from HasManyComplexTableField
FieldHolder(),
Title(),
__construct(),
controllerClass(),
getControllerID(),
selectedItemIDs(),
setAddTitle()
Methods inherited from ComplexTableField
AddForm(),
AddLink(),
IsAddMode(),
ItemCount(),
Items(),
PopupHeight(),
PopupWidth(),
add(),
createFieldSet(),
getCustomFieldsFor(),
getFieldsFor(),
getParentClass(),
getParentIdNameRelation(),
getParentRecord(),
getValidatorFor(),
getViewer(),
handleItem(),
isComposite(),
saveComplexTableField(),
setController(),
setDetailFormValidator(),
setParentClass(),
setParentIdName(),
setPopupCaption(),
setPopupSize(),
setRelationAutoSetting(),
setTemplatePopup(),
sourceClass(),
sourceFilter(),
sourceID()
Methods inherited from TableListField
Actions(),
BaseLink(),
Can(),
CurrentLink(),
ExportLink(),
FieldList(),
FirstItem(),
FirstLink(),
GroupedItems(),
HasGroupedItems(),
HasSummary(),
Headings(),
LastItem(),
LastLink(),
Link(),
ListStart(),
Name(),
NamePlural(),
NameSingular(),
NextLink(),
PageSize(),
PrevLink(),
PrintLink(),
SelectOptions(),
ShowPagination(),
SummaryFields(),
SummaryTitle(),
TotalCount(),
Utility(),
addSelectOptions(),
addSummary(),
ajax_refresh(),
colFunction_avg(),
colFunction_sum(),
delete(),
disableSorting(),
export(),
filterString(),
generateExportFileData(),
getCastedValue(),
getCsvQuery(),
getCsvSeparator(),
getExtraLinkParams(),
getPermissions(),
getQuery(),
index(),
isFieldSortable(),
performReadonlyTransformation(),
permissions_for_object(),
printall(),
removeCsvHeader(),
removeSelectOptions(),
removeSummary(),
setCSVFieldFormatting(),
setClick_AjaxLoad(),
setClick_PopupLoad(),
setCsvSeparator(),
setCustomCsvQuery(),
setCustomQuery(),
setCustomSourceItems(),
setExtraLinkParams(),
setFieldCasting(),
setFieldFormatting(),
setFieldList(),
setFieldListCsv(),
setHighlightConditions(),
setPageSize(),
setPermissions(),
setShowPagination(),
setTemplate(),
sourceItems()
Methods inherited from FormField
Field(),
LeftTitle(),
Message(),
MessageType(),
Required(),
RightTitle(),
SmallFieldHolder(),
Type(),
Value(),
addExtraClass(),
attrName(),
attrTitle(),
attrValue(),
createTag(),
dataValue(),
debug(),
describe(),
extraClass(),
forTemplate(),
getCustomValidationMessage(),
getForm(),
getTabIndex(),
getTabIndexHTML(),
hasClass(),
hasData(),
id(),
isDisabled(),
isReadonly(),
jsValidation(),
name_to_label(),
performDisabledTransformation(),
removeExtraClass(),
rootFieldSet(),
securityTokenEnabled(),
setContainerFieldSet(),
setCustomValidationMessage(),
setDisabled(),
setError(),
setForm(),
setLeftTitle(),
setName(),
setReadonly(),
setRightTitle(),
setTabIndex(),
setTitle(),
setValue(),
transform(),
validate()
Methods inherited from RequestHandler
allowedActions(),
checkAccessAction(),
getRequest(),
handleRequest(),
hasAction(),
httpError()
Methods inherited from ViewableData
ATT_val(),
BaseHref(),
CSSClasses(),
CurrentMember(),
CurrentPage(),
Debug(),
Even(),
EvenOdd(),
First(),
FirstLast(),
HasPerm(),
IsAjax(),
JS_val(),
Last(),
Me(),
Middle(),
MiddleString(),
Modulus(),
MultipleOf(),
Odd(),
Pos(),
RAW_val(),
SQL_val(),
ThemeDir(),
Top(),
TotalItems(),
XML_val(),
__get(),
__isset(),
__set(),
buildCastingCache(),
cachedCall(),
castingClass(),
castingHelper(),
castingHelperPair(),
castingObjectCreator(),
castingObjectCreatorPair(),
customise(),
defineMethods(),
escapeTypeForField(),
getField(),
getIterator(),
getSecurityID(),
getXMLValues(),
hasField(),
hasValue(),
i18nLocale(),
iteratorProperties(),
obj(),
renderWith(),
setCustomisedObj(),
setField()
Methods inherited from Object
__call(),
__toString(),
addMethodsFrom(),
addStaticVars(),
addWrapperMethod(),
add_extension(),
add_static_var(),
allMethodNames(),
cacheToFile(),
cacheToFileWithArgs(),
clearCache(),
combined_static(),
create(),
createMethod(),
create_from_string(),
exists(),
extInstance(),
extend(),
getCustomClass(),
getExtensionInstance(),
getExtensionInstances(),
get_extensions(),
get_static(),
hasExtension(),
hasMethod(),
has_extension(),
invokeWithExtensions(),
is_a(),
loadCache(),
parentClass(),
parse_class_spec(),
remove_extension(),
sanitiseCachename(),
saveCache(),
set_stat(),
set_static(),
set_uninherited(),
stat(),
strong_create(),
uninherited(),
uninherited_static(),
useCustomClass()
Magic methods summary
Properties summary
public
string
|
$itemClass |
#
Classname for each row/item |
public
boolean
|
$isOneToOne |
Properties inherited from HasManyComplexTableField
$addTitle,
$htmlListEndName,
$htmlListField,
$joinField,
$relationAutoSetting,
$template
Properties inherited from ComplexTableField
$actions,
$controller,
$defaultAction,
$detailFormFields,
$detailFormValidator,
$parentClass,
$parentIdName,
$permissions,
$popupCaption,
$popupClass,
$popupHeight,
$popupWidth,
$requirementsForPopupCallback,
$showPagination,
$sourceItems,
$sourceJoin,
$templatePopup,
$url_handlers,
$viewAction
Properties inherited from TableListField
$IsReadOnly,
$Markable,
$MarkableTitle,
$__cachedQuery,
$cachedSourceItems,
$clickAction,
$csvFieldEscape,
$csvFieldFormatting,
$csvHasHeader,
$csvSeparator,
$customCsvQuery,
$customQuery,
$customSourceItems,
$disableSorting,
$exportButtonLabel,
$extraLinkParams,
$fieldCasting,
$fieldFormatting,
$fieldList,
$fieldListCsv,
$groupByField,
$highlightConditions,
$methodName,
$pageSize,
$paginationBaseLink,
$readOnly,
$selectOptions,
$sourceClass,
$sourceFilter,
$sourceSort,
$summaryFieldList,
$summaryTitle,
$totalCount
Properties inherited from FormField
$containerFieldSet,
$customValidationMessage,
$description,
$disabled,
$dontEscape,
$extraClass,
$extraClasses,
$form,
$leftTitle,
$message,
$messageType,
$name,
$readonly,
$rightTitle,
$tabIndex,
$title,
$value
Properties inherited from RequestHandler
$allowed_actions,
$brokenOnConstruct,
$request
Properties inherited from ViewableData
$casting,
$customisedObject,
$default_cast,
$failover,
$iteratorPos,
$iteratorTotalItems
Comments
Use the Silverstripe Forum to ask questions.