Octobercms:RainLab 的 Locaion 插件

Octobercms: Locaion Plugin by RainLab

我正在尝试使用该插件以前端形式显示所有国籍,我能够拉出国家,但我无法让客户选择的选项保存在数据库中。尝试访问后端表单上的数据时出现错误。 (模型 class Lindelwa\EBilitiesResearch\Models\Application 必须定义方法 getCountryIdOptions() 返回 'country_id' 表单字段的选项。)

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

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

但是我失败了。

这是我想要实现的目标的图像。

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

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

要在下拉列表中填写值,您需要提供方法,您的字段名称是 country_id 所以您已经添加了 getCounteryIdOptions() 所以你只需要 return 数组就可以了。

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;
}

所以它将 return 所有国家/地区列表 现在这将被添加到下拉列表中并且 用户选择的选定值显示为选中

如果它不起作用请评论。