我正在创建一个可以列出企业的应用程序,我还想添加一个设施,他们可以在其中指定他们出口到的国家/地区。因此,当用户搜索其国家/地区的企业列表时,他们不仅会看到位于其国家/地区的企业,还会看到其他国家/地区的企业也可能将其服务出口到其国家/地区。
到目前为止,这是我的想法-有更好的解决方案吗?我正在使用 Rails 3.2 和 Postgres。
- 国家模型,包含 id、name、slug 等字段
- 列表模型,有一个 Postgres 数组字段,用于存储该企业出口到的国家/地区 ID
然后,当我显示某个国家/地区的列表时,我可以在 country_export 数组中搜索也具有该国家/地区 ID 的企业。
但这是最有效的方法吗?(我会使用 postgres_ext gem 来启用 pg 数组支持:https ://github.com/dockyard/postgres_ext )
我能想到的另一个选项是列表模型上的复选框,因此企业可以说明他们是否出口到全球、欧盟、亚洲等。然后将它们添加为国家模型中的布尔字段。这样做的缺点是它不会像具体说明国家那样准确......但如果这是一种更有效的方式,我不介意妥协。