我正在努力寻找更新专栏的方法。 该列有一个复合主键。
我尝试过类似的方法:
for anime_ranking in new_anime_rankings {
let mut db_anime_ranking: models::AnimeRanking = anime_rankings
.find((anime_ranking.id, anime_ranking.genre_combo_id))
.first(&mut connection)?;
println!("{}", db_anime_ranking.id);
db_anime_ranking.times_watched += 1; // directly increment it by 1 as anime_ranking.times_watched is always 1
update(anime_rankings.filter((id.eq(anime_ranking.id), genre_combo_id.eq(anime_ranking.genre_combo_id))))
.set(times_watched.eq(db_anime_ranking.times_watched += 1))
.execute(&mut connection)?;
}
虽然不起作用。我在文档中也找不到任何有关它的信息。 请帮助我。
找到了。 你必须使用.and():
update(anime_rankings.filter(id.eq(anime_ranking.id).and(genre_combo_id.eq(anime_ranking.genre_combo_id)))