Octobercms:RainLab的Locaion插件

时间:2017-12-12 11:04:21

标签: octobercms octobercms-plugins

我正在尝试使用插件在前端表单上显示所有国籍,我能够拉动国家/地区,但我无法通过客户端获取选定的选项以保存在数据库中。当尝试访问后端表单上的数据时,我会收到错误。 (模型类Lindelwa \ EBilitiesResearch \ Models \ Application必须定义一个方法getCountryIdOptions(),返回'country_id'表单字段的选项。)

我试图理解文档中的内容:

http://octobercms.com/docs/backend/forms#field-dependencies

但我失败了。

这是我想要实现的目标的图像。 enter image description here

Error I get When trying to edit back-end form entry

Model class

我希望能够在前端的下拉列表中显示国家/地区以及何时在后端访问我应该能够检查哪个国家/地区已被选中并仍然在下拉列表中显示所有国家/地区

1 个答案:

答案 0 :(得分:0)

好的,如果你想在后端表单中显示下拉列表,首先你需要在下拉列表中显示列表/数据,然后才会设置选定的值,

要填写您需要提供方法的下拉列表中的值,您的字段名称为 country_id ,因此您已添加 getCounteryIdOptions(),因此您需要从中返回数组它

public function getCounteryIdOptions() {
    // you fetch all records / same way as in frontend you are showing
    // format value/id => title

    $result = [];
    // foreach loop
    $result[$record->id] = $record->title;
    // $result[1] = 'Xyz Country';
    // for loop end
    return $result;
}

所以它将返回所有国家/地区列表现在这将添加到下拉列表中,并且选择的值由用户选择

如果不起作用请发表评论。