我创建了我的第一个extbase扩展,工作正常。现在我想在我的分机中输入地址信息,比如城市,邮政编码和街道。
我更愿意与" tt_address"建立关系。我的目标是从" tt_address"创建1:N关系。我的扩展名。
但扩展" tt_address"基于" pi_base",我该如何处理这个问题?我的" tca"看?
如何创建记录表格" createAction"进入" tt_address"表,我应该需要对象管理器吗?
网上有例子吗?
更新,我用街道,邮编和城市扩展我的模型:
/**
* street
*
* @var string
*/
protected $street;
/**
* street
*
* @var string
*/
protected $zip;
/**
* street
*
* @var string
*/
protected $city;
public function setStreet($street)
{
$this->street = $street;
}
public function getStreet()
{
return $this->street;
}
public function setCity($city)
{
$this->city = $city;
}
public function getCity()
{
return $this->city;
}
public function setZip($zip)
{
$this->zip = $zip;
}
public function getZip()
{
return $this->zip;
}
在此之后我扩展了我的typoscript setup.txt
plugin.tx_oaevents {
view {
templateRootPath = {$plugin.tx_oaevents.view.templateRootPath}
partialRootPath = {$plugin.tx_oaevents.view.partialRootPath}
layoutRootPath = {$plugin.tx_oaevents.view.layoutRootPath}
}
persistence {
storagePid = {$plugin.tx_oaevents.persistence.storagePid},148
classes {
Mab\Oavents\Domain\Model\Events {
mapping {
tablename = tx_nnaddress_domain_model_address
columns {
zip.mapOnProperty = zip
street.mapOnProperty = street
city.mapOnProperty = city
}
}
}
}
}
在最后一步,我扩展了我的扩展TCA。
address' => array(
'exclude' => 1,
'label' => 'Events',
'config' => array(
'type' => 'select',
'foreign_table' => 'tt_address',
'minitems' => 0,
'maxitems' => 1,
),
),
答案 0 :(得分:0)
您需要创建一个模型并将其映射到TS到表tt_address。在此映射中,您需要将模型中的每个字段设置为要映射的表中的列。当你有模型和映射时,其他一切都是一样的。您可以为模型创建控制器和存储库,并且可以创建createAction
来向表tt_address插入内容