我正在开发一个具有模型Role
角色的字段为type_id
。
角色还有4个字段:field_a
,field_b
,field_c
和field_d
根据所选类型的用户,将显示一组字段。
根据选择的类型,这些字段会有所不同
例如,如果role.type_id == 1
,我们将以创建新角色的形式显示role.field_a
和role.field_b
。这意味着对于该角色field_c
和field_d
将可以为空。
我试图找到一种设计我的数据库模式的好方法,因为有两种以上的类型,并且每种类型有两个以上的字段。
我不想在null
表中为每个条目设置一堆roles
字段。
我的想法是要有一个role_fields
表,我将在其中存储字段名称并将其与role_type
关联。因此将有2列:role_type_id
和name
。那么我可以按照用户选择的类型来获取与给定角色关联的所有字段。
但是我认为这会使前端的视图复杂化,在该视图中,我们将不得不为每个角色循环一组字段以显示供用户键入的字段。这意味着我们应该存储字段类型(例如input或select-对于此字段,我们还需要存储默认数据)之所以如此之快,是因为我不想在这里构建CMS。