所以我有一个具有以下字段的项目模型:
- 名称(字符串)
- 说明(文字)
- 隐藏者(字符串)
- 搜索者(字符串)
- 长(浮动)
- 纬度(浮动)
- 关键字(字符串)
- 找到(布尔值)
高分应具有以下字段:
- 用户名(姓名) - 点数(整数)
我想创建一个高分模型,它将迭代 Item 模型并找到布尔值为真的实体。然后用一个点将搜索者添加到高分表中。如果用户已经存在,那么只需在他的条目中添加一个额外的点。
我将如何设计这种类型的数据库...
所以我有一个具有以下字段的项目模型:
高分应具有以下字段:
- 用户名(姓名) - 点数(整数)
我想创建一个高分模型,它将迭代 Item 模型并找到布尔值为真的实体。然后用一个点将搜索者添加到高分表中。如果用户已经存在,那么只需在他的条目中添加一个额外的点。
我将如何设计这种类型的数据库...
我永远不会在这里建议迭代方法。这是我们正在谈论的数据库,对数据进行线性迭代是不现实的。
你能做的就是使用Observer
. 在这里阅读它们 - http://api.rubyonrails.org/classes/ActiveRecord/Observer.html
有了这个,您可以检查save
和update
回调,并根据您的布尔值,您可以创建/更新 HighScore 记录。