🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
我们经常遇到表单中,某些字段是需要选择数据库或者配置文件中的一个列表中的对应值 ``` <?php namespace demo; class Demo { public function cate_id() { return [ 'type' => 'select', 'title' => '分类', 'field' => 'cate_id', 'options' => NewsCate::buildCateOptions(), ]; } } ``` 如上示例,一个分类需要从分类配置表中获取一个配置选型列表。 这里提供一个方便的解决办法: 1. 修改模型继承 suframe\thinkAdmin\model\ModelBase; 2. 增加一个buildCateOptions 方法,增加这个方法是为了减少模型暴露的字段,更方便管理 ``` class NewsCate extends suframe\thinkAdmin\model\ModelBase { public static function buildCateOptions($hasAll = false) { return static::buildOptions('id', 'name', $hasAll); } } ``` 这样就完成了表单会自动关联对应的模型列表, 如果是配置文件同理