---
title: "Feature: #84983 - BE ViewHelper for EditDocumentController"
manual: "TYPO3 Core Changelog"
version: "main"
permalink: "https://docs.typo3.org/permalink/changelog:feature-84983"
source: "Changelog/9.3/Feature-84983-BEViewHelperForEditDocumentController.rst"
modified: "2026-09-15T10:46:36+00:00"
---

# Feature: #84983 - BE ViewHelper for EditDocumentController

See [forge#84983](https://forge.typo3.org/issues/84983)

## Description

Linking to FormEngine / EditDocumentController in fluid templates of backend modules
to edit database records and to create new records, has been simplified by introducing
a series of new view helpers.

## Usage:

### New record URI and Link view helper

Outputs the uri / the link to bring up FormEngine with the create new record form.

Available view helper arguments:

-   **table**

    Mandatory. The database table the record belongs to.

-   **uid**

    Optional. Negative value of the uid of the record the new record should be placed after. Must be negative!

-   **pid**

    Optional. The pid of the page the record should be placed to. Must be zero or positive. If not given, defaults to zero (root page).

-   **returnUrl**

    Optional. If given, the form redirects to that URL after save / close.

> [!NOTE]
> The ViewHelper accepts either pid or uid to be set, not both. If none is set, the record will be put to pid 0,
> if the TCA configuration of the table allows this.

```html
<!-- URI to add a new news record on page 11 -->
<be:uri.newRecord pid="11" table="tx_news_domain_model_news" />

<!-- URI to add a new news record on root page -->
<be:uri.newRecord table="tx_news_domain_model_news" />

<!-- URI to add a new news record sorted after news record 17 and on the same pid as record 17 -->
<be:uri.newRecord uid=-17 table="tx_news_domain_model_news" />

<!-- Full link to add a new news record on page 25 -->
<be:link.newRecord pid="25" table="tx_news_domain_model_news">create news article</be:link.newRecord>
```

### Edit record URI and Link view helper

Outputs the uri / the link to bring up FormEngine with the records edit form.

Available view helper arguments:

-   **table**

    Mandatory. The database table the record belongs to.

-   **uid**

    Mandatory. The uid of the record to be edited.

-   **returnUrl**

    Optional. If given, the form redirects to that URL after save / close.

```html
<!-- URI to edit the news record with uid 43 -->
<be:uri.editRecord uid="43" table="tx_news_domain_model_news" />

<!-- Link to edit the news record with uid 43 -->
<be:link.editRecord uid="43" table="tx_news_domain_model_news" />
```

## Impact

Extensions must no longer provide their own ViewHelpers for editing and creating records. The ones provided from ext:backend are public API.
