小编Jam*_*mes的帖子

单个 Prisma 查询中的 LEFT JOINS 和聚合

我有一个包含多个表的数据库,需要经常查询这些表,LEFT JOIN以便结果包含来自其他表的聚合数据。我的 Prisma 架构的片段:

model posts {
  id                Int      @id @unique @default(autoincrement())
  user_id           Int
  movie_id          Int      @unique
  title             String   @db.Text
  description       String?  @db.Text
  tags              Json?
  created_at        DateTime @default(now()) @db.DateTime(0)
  image             String?  @default("https://picsum.photos/400/600/?blur=10") @db.VarChar(256)
  year              Int
  submitted_by      String   @db.Text
  tmdb_rating       Decimal? @default(0.0) @db.Decimal(3, 1)
  tmdb_rating_count Int?     @default(0)
}

model ratings {
  id         Int       @unique @default(autoincrement()) @db.UnsignedInt
  entry_id   Int       @db.UnsignedInt
  user_id    Int       @db.UnsignedInt
  rating     Int       @default(0) @db.UnsignedTinyInt
  created_at DateTime  @default(now()) @db.DateTime(0)
  updated_at DateTime? @db.DateTime(0)

  @@id([entry_id, user_id])
}
Run Code Online (Sandbox Code Playgroud)

如果我想在查询时返回平均评分posts,我可以使用如下查询: …

mysql node.js prisma prisma2

11
推荐指数
2
解决办法
4万
查看次数

什么时候不应该在 Python 中使用 self 约定?

我最近刚刚了解了selfPython 中的约定,并开始编写更复杂的代码。然而,一位经验丰富的程序员和我的朋友告诉我,self在类方法中使用每个变量是浪费的。

我知道这self会导致变量归属于该类。那么,除非有需要,避免使用是不是一种好的做法self

下面是一些从 API 获取英雄联盟信息并将每个变量存储在其中的代码,self.var_name以说明我如何(也许不必要)使用self.

async def getChampInfo(self, *args):
    """ Return play, ban, and win rate for a champ """
    self.uri = "http://api.champion.gg/v2/champions/{}?api_key={}"
    self.champ = " ".join(args)
    self.champID = lu.getChampID(self.champ)
    self.res = requests.get(self.uri.format(
        self.champID, League.champion_gg_api_key)).json()
    self.role = self.res[0]["role"]
    self.role_rate = self.res[0]["percentRolePlayed"]
    self.play_rate = self.res[0]["playRate"]
    self.win_rate = self.res[0]["winRate"]
    self.ban_rate = self.res[0]["banRate"]
Run Code Online (Sandbox Code Playgroud)

python convention styles memory-management self

2
推荐指数
1
解决办法
1301
查看次数