What to do in the future without FrontendUser-Model?

Hello all,

I hope I am in the right place. I have already asked the following question at https://review.typo3.org/ for merge 70061. It is about that the “generic” model of the FrontendUser and FrontendUserGroup were discontinued. And I don’t know what to do now…

I am trying to make my Typo3 10 extensions fit for Typo3 version 11. Now I came across this change and I don’t understand how to rebuild my extensions. The migration hint was not very helpful.

Example:
The frontend groups should get a list of other frontend groups. In this case it is about other domain hierarchy than it can be mapped with the subgroups. The editors should simply be able to select the groups at the corresponding frontend group via a multi-selection field.

With version 10:

  • Derivation of the model and the repository with the 1-n extension to the other FE groups.
  • In the conroller you can use the derived repository and have the properties of the group + my new 1:n relationship to other groups.
  • Since the relationship is based on my new model, I can walk briskly through the tree and be happy…
  • by extending the fe_groups model it is also easy for editors to maintain.
    At the latest from version 12:
  • No derivation of the model and the repository.
  • There is only the mm table. Should I create a repository for it? Is that possible?
  • and then? Here I no longer understand how it should go on?

I can imagine that the editors in BE have to create more (mm) records separately. Which makes the whole thing much more difficult for the editors.
Too times there is not only one extension. There are at least three extensions that store additional user information. (e.g. settings from the user profile) If all this has to be stored in separate tables, then I can hear the cursing of the editors, because the whole thing is so complicated:
Before everything was nice and clear with each FE user together. But after the changeover, there are umpteen BE data records.

And what I do not understand at all: If the “generic” FrontUser model is removed completely, one must write then everything the fe_user table itself, in order to come to the Meta data? Or will the user metadata also be removed without replacement?

There are a lot of question marks buzzing above my head…

Please give me an information, how to future philosophy should be and not only that the existing can not be correct and therefore must be gone…

I could understand if the meta data attributes are canceled, because that is just “guessing” what Typo3 system need. But the whole frontend user model?

I’m at a loss…

Greetings Clemens

Translated with www.DeepL.com/Translator (free version) —

As I understand you only need to build your own frontend user model as there is no Extbase one any more.

If you had one already extending the Extbase frontend user model, you only need to copy the methods and attributes you need to your own and extend it from the AbstractEntity instead.

If you hadn’t one you need to add the attributes and methods you need for your own user model.

The fe_users table, the Extbase functionality and the models / repositories will be kept.
With a good IDE the attributes and the related getter and setter are created within a few minutes.

Thank you for your quick reply.

For me, the change runs into a simple problem very quickly:

FrontendUserRepository is also set to “deprecated” for the same reason. So better not to derive it…

If I now use an own FrontendUser-Model and an own FrontendUser-Repository in my extension, I end up with the table:
“tx_[ext-name]_domain_model_frontenduser” and not at “fe_user”. :frowning:

That’s why I’m so stumped…

Also I read that the class FrontendUser disappears completely in version 12.

Translated with www.DeepL.com/Translator (free version)

@docmcfly Please see Using foreign data sources which explains how to map domain models to arbitrary tables.

This is exactly what TYPO3 did with the generic FrontendUser model so far, no magic involved:

Thanks again for your quick reply.

That helped me a lot. I guess I will have to do a lot of rearranging. :frowning:

But until version 12 is still a few days time.

I’ll get back to you if I get stuck.

Many thanks to you

With every major version there are breaking changes.
You always need to adapt your extensions.
Deprecations help you to prepare your extension for the next major upgrade.