Link.newRecord ViewHelper <be:link.newRecord>
¶
Note
This ViewHelper is not available by default.
Import its namespace
{namespace be=TYPO3\CMS\Backend\ViewHelpers\}
in the Fluid file or
xmlns:be="http://typo3.org/ns/TYPO3/CMS/Backend/ViewHelpers/"
in the opening HTML tag.
Use this ViewHelper to provide 'create new record' links. The ViewHelper will pass the command to FormEngine.
The table argument is mandatory, it decides what record is to be created.
The pid argument will put the new record on this page, if 0
given it will
be placed to the root page.
The uid argument accepts only negative values. If this is given, the new record will be placed (by sorting field) behind the record with the uid. It will end up on the same pid as this given record, so the pid must not be given explicitly by pid argument.
An exception will be thrown, if both uid and pid are given. An exception will be thrown, if the uid argument is not a negative integer.
To edit records, use the <be:link.editRecordViewHelper>.
Examples¶
Link to create a new record of a_table after record 17 on the same pid:
<be:link.newRecord table="a_table" returnUrl="foo/bar" uid="-17"/>
Output:
<a href="/typo3/record/edit?edit[a_table][-17]=new&returnUrl=foo/bar">
Edit record
</a>
Link to create a new record of a_table on root page:
<be:link.newRecord table="a_table" returnUrl="foo/bar""/>
Output:
<a href="/typo3/record/edit?edit[a_table][]=new&returnUrl=foo/bar">
Edit record
</a>
Link to create a new record of a_table on page 17:
<be:link.newRecord table="a_table" returnUrl="foo/bar" pid="17"/>
Output:
<a href="/typo3/record/edit?edit[a_table][17]=new&returnUrl=foo/bar">
Edit record
</a>
Link to create a new record then return back to the BE module "web_MyextensionList":
<be:link.newRecord table="a_table" returnUrl="{f:be.uri(route: 'web_MyextensionList')}" pid="17">
Output:
<a href="/typo3/record/edit?edit[a_table][17]=new&returnUrl=/typo3/module/web/MyextensionList">
Edit record
</a>
Link to create a new record of a_table on page 17 with a default value:
<be:link.newRecord table="a_table" returnUrl="foo/bar" pid="17" defaultValues="{a_table: {a_field: 'value'}}">
Output:
<a href="/typo3/record/edit?edit[a_table][17]=new&returnUrl=foo/bar&defVals[a_table][a_field]=value">
Edit record
</a>
Source code¶
Go to the source code of this ViewHelper: NewRecordViewHelper.php (GitHub).
Arguments¶
The following arguments are available for <be:link.newRecord>
:
-
additionalAttributes
¶ -
- Type
- mixed
Additional tag attributes. They will be added directly to the resulting HTML tag.
-
data
¶ -
- Type
- mixed
Additional data-* attributes. They will each be added with a "data-" prefix.
-
aria
¶ -
- Type
- mixed
Additional aria-* attributes. They will each be added with a "aria-" prefix.
-
class
¶ -
- Type
- string
CSS class(es) for this element
-
dir
¶ -
- Type
- string
Text direction for this HTML element. Allowed strings: "ltr" (left to right), "rtl" (right to left)
-
id
¶ -
- Type
- string
Unique (in this file) identifier for this HTML element.
-
lang
¶ -
- Type
- string
Language for this element. Use short names specified in RFC 1766
-
style
¶ -
- Type
- string
Individual CSS styles for this element
-
title
¶ -
- Type
- string
Tooltip text of element
-
accesskey
¶ -
- Type
- string
Keyboard shortcut to access this element
-
tabindex
¶ -
- Type
- integer
Specifies the tab order of this element
-
onclick
¶ -
- Type
- string
JavaScript evaluated for the onclick event
-
uid
¶ -
- Type
- mixed
Uid < 0 will insert the record after the given uid
-
pid
¶ -
- Type
- mixed
The page id where the record will be created
-
table
¶ -
- Type
- string
- Required
true
Target database table
-
returnUrl
¶ -
- Type
- string
Return to this URL after closing the edit dialog
-
defaultValues
¶ -
- Type
- mixed
- Default
array ()
Default values for fields of the new record