我想从用户模型计算排名,其中排名只是数字。排名示例:
当用户等级达到150点时,应该是白银等级。我可以通过查询排名表来从虚拟列计算排名以获取排名名称吗?
"use strict";
module.exports = (sequelize, DataTypes) => {
const Rank = sequelize.define("Rank", {
name: DataTypes.STRING,
tier_total: DataTypes.INTEGER
});
const UserGameID = sequelize.define(
"UserGameID",
{
user_id: DataTypes.INTEGER,
total_win: {
type: DataTypes.INTEGER,
defaultValue: 0
},
total_lose: {
type: DataTypes.INTEGER,
defaultValue: 0
},
total_match: {
type: DataTypes.INTEGER,
defaultValue: 0
},
total_point: {
type: DataTypes.INTEGER,
defaultValue: 0
},
rank: {
type: DataTypes.VIRTUAL,
get: async function() {
var rank = await Rank.findOne({
where: {
tier_total: { $lte: this.total_point }
}, …Run Code Online (Sandbox Code Playgroud)