如何在 Extension Builder 中为 TYPO3 FrontendUsers 设置 ForeignKey?
我是否必须将参数映射设置为现有表?建立关系?
我想做的事:
我有一个模型(人),它有自己的领域和价值观。现在我想在这个模型和 TYPO3 FE 用户之间建立一个新的关系
PeopleNr = fe_user,uid 为 123
如何在 Extension Builder 中为 TYPO3 FrontendUsers 设置 ForeignKey?
我是否必须将参数映射设置为现有表?建立关系?
我想做的事:
我有一个模型(人),它有自己的领域和价值观。现在我想在这个模型和 TYPO3 FE 用户之间建立一个新的关系
PeopleNr = fe_user,uid 为 123
注意: 如其他问题中所述,在表/模型之间创建关系不需要添加外键
我不太确定您需要它来做什么,但这里描述了两种最常见的情况(屏幕截图显示了如何使用 Extension Builder 实现每种情况)
FrontendUser
模型/fe_user
表的关系在 TYPO3 版本中。6.2fe_user
也有一个模型:\TYPO3\CMS\Extbase\Domain\Model\FrontendUser
,您可以在 Builder 建模工具(截图中的图 2)中将其添加为公共关系\Fully\Qualified\Classname
(您需要Show advanced fields
设置它(图 1)使用FrontendUser
它,它将创建正确的SQL
和TCA
定义。
FrontendUser
(FU)模型另一方面,如果您的People
* 模型只是扩展fe_user
表,因为您想为您的人员重用现有的 fe_user 表,您也可以真正扩展 FrontendUser
模型(图 3),在这种情况下,您将从 FU 继承所有 getter、setter等等,你不需要自己写。
In such case your model will be a separate type of fe_user
, the discriminator field is by default: tx_extbase_type
and builder will add new type like Tx_YourExt_Employee
*
note: For model names you should use singular form i.e Man
instead of People