假设我在to模型、用户和地址之间有一个简单的一对一关系。我正在尝试扩展用户(使用前端用户Rainlab插件)来建立这样的关系。我已经成功地使用以下行为将地址附加到UserModel:
$model->hasOne['address'] = ['First\Second\Models\Address'];我遇到的问题是在后端为用户添加一个新的标签页时。我有一个指定了所有相关字段的新选项卡:
street:
label: "Address"
tab: "Profile"
address_2:
label: "Address 2"
tab: "Profile"
company_name:
label: "Company"
tab: "Profile"
span: left
zip:
label: "Zip"
tab: "Profile"
span: right
city:
label: "City"
tab: "Profile"
span: left
state:
label: "State"
placeholder: "Select"
type: dropdown
tab: "Profile"
span: right然而,我在这里遇到了一些问题。首先,对于其中的每一个,我希望引用一个地址模型,而不是用户模型(就像在中一样,我希望getStateOptions从地址模型而不是用户模型中拉出)。其次,在保存时,它将(逻辑上)尝试插入到用户而不是地址中。
我想我可以为每个属性使用setter,但这有点混乱,因为它将一个Model的状态直接绑定到另一个Model。YAML规范中有没有告诉表单将这些值附加到相关模型的方法?
发布于 2019-09-18 15:59:40
在您的fields.yaml文件中,您使用关系名称来执行您所描述的操作。
address[street]:
label: "Address"
tab: "Profile"
address[address_2]:
label: "Address 2"
tab: "Profile"
...就这样!
https://stackoverflow.com/questions/57928497
复制相似问题