我有一个种族的域查找表。一个人可以有多个种族——高加索人、印度人、拉丁美洲人等。总共大约有 10 个。
在我的应用程序的一部分中,用户将选择他们自己的种族,因此他们将选中一个或多个复选框。在应用程序的另一部分,不同类型的用户可以指定按种族与某人匹配。该用户还可以指定一个或多个,但也可以指定“无偏好”。
所以第一个用户会看到: caucasian latino asian indian ...
第二个用户看到: 没有偏好 白种人 拉丁裔 亚洲 印度人
我的问题是如何在查找表/域用户对象中实现这一点。“没有偏好”让我失望。它是用户对象中的布尔值,还是在显示第一个用户的视图时被过滤掉的种族查找表中的另一个值?
还可以选择在幕后通过 jquery 触发无偏好检查,以便第二个用户将每个种族作为其域对象的一部分。但是然后我必须做一些笨拙的事情,例如“第二个用户是否将每个种族都存储在他们的域中,如果是,则在视图中检查“无偏好”。
编辑:
显示 UI 可能会更好。这是我需要实现的。种族存储在查找表中。我的域将如下所示:
class Profile P
static hasMany = [ethnicity:Ethnicity]
...
}
这是其他用途将看到的内容: